在MySQL中,我可以指定与OR
的替代匹配:
SELECT * FROM table WHERE var = 1 OR var = 2
当有很多替代品时,将它们列为这样会变得很麻烦。有没有办法,我可以给出一个列表,向量或值数组?有点像这个伪代码:
SELECT * FROM table WHERE var IN {1, 2, 5, 11, 45}
答案 0 :(得分:2)
您可以使用括号而不是大括号指定IN
。
SELECT * FROM table WHERE var IN (1, 2, 5, 11, 45)
答案 1 :(得分:1)
equality/comparison
中的第一个 MySQL
运算符=
仅为==
。
是您可以通过引入IN
子句来实现相同目标。但是您的语法不符合MySQL
标准。它应该是:
SELECT * FROM table WHERE your_column IN (1,2,5,11,45)
注意:强>
使用IN。
IN将使用索引。
或者(afaik)不使用索引。
另外,这一点不要打喷嚏,IN版本:
- 使用更少的代码
- 更容易维护
- 更容易理解
仅凭这些原因,我会做好准备 获得代码质量的性能,但实际上你获得了性能 太