2011-09-14 11 views
-1

PHPスクリプトでエラーが発生しましたが、私の結合クエリが正しいとは思っていませんか?MySQLのクエリは正しいですか?

$sql15 = mysql_query("select userid, Reciver, Sender , proimg from Friends JOIN users ON(Reciver ='$fullname' or Sender ='$fullname') where accepted = 2") or die("ERROR Please refresh the page and try again"); 
$Fri = mysql_num_rows($sql15); 

、これは私が

$sql12 = mysql_query("select * from Friends where (Reciver = '$fullname' or Sender = '$fullname')") or die("ERROR Please refresh the page and try again"); 
$Friends = mysql_num_rows($sql12); 

質問の問題だと思う他のいずれかです。何が私のmysqlのquerysと間違っていますか?

+0

エラーメッセージは表示されていますか? – Dirk

+0

いいえ、それは何をしなかったか2それは私に1を与え、私は2を与えるべきです – Ryan

+0

あなたは私たちに質問が達成されるはずの考えを教えてもらえますか?そしていくつかのサンプルデータ。 – Dirk

答えて

2

いいえ、あなたのJOINの構文は正しくありません。 JOINは、よく、に参加する必要があります。テーブルに参加してください。たとえば、

これは、指定された列を比較することによって、 "friends"テーブルと "users"テーブルを結合します。

現在のJOIN句はフィールドと変数を比較しています。本質的にはWHERE節のように使用しようとしています。これによりエラーは発生しませんが、参加も行われません。

MySQLドキュメントはかなり良いです:http://dev.mysql.com/doc/refman/5.0/en/join.html WorkbenchアプリケーションまたはMySQLコマンドラインを使用してSQLを読み込んでテストしてください。これらのツールは、PHPでor die...を使用するよりもはるかに良いフィードバックを提供します。

関連する問題