我是mysql和php的新手。我想知道两个查询如何在mysql中合并。我有表 testTable ,其中:
id Username1 USername2
1 A A
2 A B
3 B A
4 A A
5 A C
6 B A
7 A B
8 A A
现在我想写查询:(A和B)或(B ana A)仅在表格中显示。
喜欢
2 A B
3 B A
6 B A
7 A B
这就是我想要的,但因为我是新人,所以我无法做到这一点。
我试过这个
$query = mysql_query("SELECT * FROM tableWriteText WHERE txt_Userame1='$txt_Useram1' AND txt_Userame2='$txt_Userame2' ORDER BY id ");
从iphone发送到php并获取
假设我从iPhone发送username1 = A
,username2 = B
所以我得到了表
2 A B
7 A B
但我希望每当我从iPhone发送username1 = A
,username2 = B
或
我第二次从iPhone发送username1 = B
,username2 = A
每次,我想按顺序获得所有A和B表格,如
2 A B
3 B A
6 B A
7 A B
为此,我也尝试了这个:
$query = mysql_query("SELECT * FROM tableWriteText WHERE (txt_Userame1='$txt_Useram1' AND txt_Userame2='$txt_Userame2') OR (txt_Userame2='$txt_Useram2' AND txt_Userame1='$txt_Userame1') ORDER BY id ");
非常欢迎任何想法或建议。
答案 0 :(得分:0)
你在最后写的查询几乎是正确的。只是一个合乎逻辑的问题。
(txt_Userame1='$txt_Useram1' AND txt_Userame2='$txt_Userame2')
OR
(txt_Userame2='$txt_Useram2' AND txt_Userame1='$txt_Userame1')
您刚刚更改了它们的显示顺序,您还需要滑动变量。
这可能对你有用......
"SELECT * FROM tableWriteText WHERE (txt_Userame1 = '$txt_Useram1' AND txt_Userame2 = '$txt_Userame2') OR (txt_Userame1 = '$txt_Useram2' AND txt_Userame2 = '$txt_Userame1') ORDER BY id "
答案 1 :(得分:0)
您应该向查询添加一个条件:
SELECT * FROM tableWriteText
WHERE
txt_Userame1='$txt_Useram1' AND txt_Userame2='$txt_Userame2'
OR
txt_Userame1='$txt_Userame2' AND txt_Userame2='$txt_Useram1'
ORDER BY id, asc
AND
的优先级高于OR
,因此您不必在此处使用支架。