0

好的,所以查询非常简单:

SELECT a, b, c FROM d WHERE a = ('x' OR 'y' OR 'z');

这个查询效果很好,但如果我要查询的话,这个:

SELECT a, b, c FROM d WHERE a = ('x' OR 'y' OR 'z' OR 'x1');

由于“x1”中的数字,不会返回任何行。

我正在使用 mysql 5.5.9,并且我正在使用 MAMP 在我的 Mac 上运行虚拟服务器(如果重要的话)

谢谢你们的帮助!

4

2 回答 2

2

试试这些

SELECT a, b, c FROM d WHERE a IN ('x','y','z','x1');

或者

SELECT a, b, c FROM d 
WHERE a = 'x' OR a = 'y' OR a = 'z' OR a = 'x1';
于 2012-09-09T21:04:43.730 回答
1

正确的查询是:

select a, b, c from d where a IN ('x', 'y', 'x1')

IN子句根据其他结果评估表达式。如果您的字段 a 是 varchar,则应将所有 varchars 放入您的IN子句

该查询应该有效。如果您想阅读有关内容IN,请参阅此示例

于 2012-09-09T21:04:54.250 回答