5

私は月曜日の Comp Science プロジェクトのプロジェクトの途中で、クエリに関する MySQL の質問に出くわしました。

私が言葉を通して実現したいのは、これです。

to=jake および列 from=connor OR列 to=connor および列 from=jakeの場合、その特定のテーブルから cID を取得します。

私がこれまでに持っているのはこれです

 $query="SELECT cID FROM conversation WHERE to='$to' AND to='$from' OR to='$from' AND        from='$to'";

このクエリを機能させるためにできることは何ですか? 前もって感謝します!

4

3 に答える 3

15

()論理記号で区切られた 2 つの条件ペアをグループ化するには、2 つのペアが必要です。OR

$query="
  SELECT cID 
  FROM conversation
  WHERE 
      /* to Jake, from Connor */
     (`to`='$to' AND `from`='$from')
      /* OR to connor, from jake */ 
     OR  (`to`='$from' AND `from`='$to')";

注: FROMandTOはどちらもMySQL の予約済みキーワードであるため、バックティックで引用する必要があります。

于 2012-06-16T22:15:28.247 に答える
1

これはテストされていませんが、to='$to' AND to='$from' (from to ではないと思いますか??) を角かっこに入れる必要があると思います??

私がタイプしていたときに、他の誰かがこれを書いたことに気付きました

于 2012-06-16T22:16:41.490 に答える
1
$query="SELECT cID FROM conversation WHERE 
(to='$to' OR to='$from' OR to='$from') AND from='$to'";
于 2012-06-16T22:16:54.143 に答える