SQL WHERE子句条件不起作用

时间:2017-06-04 09:37:56

标签: mysql sql

这是我的表:

City1      City2

London     New York
New York   London
Mumbai     London
New York   Mumbai

这就是我想要的:

如果有人选择:伦敦+纽约,则会显示包含伦敦+纽约的所有行。无论如何,首先是什么。

我想要显示,如果有人选择:伦敦&纽约

London     New York
New York   London

这是我目前的代码:

WHERE City1='London' AND City2='New York';\

它只显示:

London     New York

3 个答案:

答案 0 :(得分:0)

您可以使用WHERE IN()

WHERE City1 IN ('London','New York') AND City2 IN ('London','New York');

如果您不想选择行,如果相同,您可以尝试:

WHERE City1 IN ('London','New York') AND City2 IN ('London','New York') and City1 != City2

答案 1 :(得分:0)

你可以使用

WHERE (City1='London' AND City2='New York') or (City1='New York' AND City2='London')

它不是最佳解决方案,但可能有效;)

答案 2 :(得分:0)

专门进行两次比较......

SELECT * 
  FROM my_table 
 WHERE LEAST(col1,col2) = LEAST('val1','val2') 
   AND GREATEST(col1,col2) = GREATEST('va1l','val2');