在具有相同列名的where子句上有多个语句

时间:2017-01-05 15:59:35

标签: mysql

我有一个示例SQL语句,上面写着:

SELECT * from users WHERE id = 2 OR id = 5 OR id = 7

我希望每次都避免在id子句中重复where。在MySQL中是否有一个快捷方式允许我仅提及id一次?

2 个答案:

答案 0 :(得分:3)

是的,IN子句

SELECT * from users WHERE id IN(2,5,7);

如果您在比较中使用的这些ID来自另一个表,您甚至可以

 SELECT * FROM users WHERE id in (SELECT other_id FROM other_table WHERE somecondition)

答案 1 :(得分:2)

e4c5为您提供了所需的答案,但您可以使用IN进行其他操作:

select * from users where 'steve' IN (users.fname, users.lname)