查询多个值

时间:2013-03-28 05:32:20

标签: mysql sql select

我目前正在编写应该查询具有多个ID的多个不同记录的代码。我试过了:

SELECT * FROM Items WHERE ID = ( 1, 2 )

SELECT * FROM Items WHERE ID = 1, 2

SELECT * FROM Items WHERE ID = '1, 2'

我做错了什么?

7 个答案:

答案 0 :(得分:2)

使用此

SELECT * FROM Items WHERE ID = 1 or ID = 2;

或使用简写符号

SELECT * FROM Items WHERE ID IN (1,2);

答案 1 :(得分:2)

如果您要与多个值进行比较,请

使用IN

SELECT * FROM Items WHERE ID IN (1, 2)

相同
SELECT * FROM Items WHERE ID = 1 OR ID = 2

对于此声明:“...查询具有多个ID的多个不同记录”,我认为您要搜索具有多个ID的组,如果是这种情况,问题是叫Relational Division

SELECT groupColumn
FROM   Items 
WHERE  ID IN (1, 2)
GROUP  BY groupColumn
HAVING COUNT(*) = 2

答案 2 :(得分:2)

您需要输入的内容是

SELECT * FROM Items WHERE ID IN (1,2)
对于IN括号内的字符串值,

注意使用单引号('1','2')

答案 3 :(得分:2)

使用IN,如下所示

SELECT * FROM Items WHERE ID IN (1, 2);

答案 4 :(得分:2)

语法:

SELECT * FROM TABLE WHERE ID IN (id1, id2, ..., idn)

在你的情况下:

SELECT * FROM Items WHERE ID IN (1, 2);

答案 5 :(得分:2)

它也会起作用。您正在寻找的信息是大多数SQL语言的“IN”运算符(MySQL example here)。

你正在做的是提供一系列值作为一个集合(IN运算符的右侧),然后要求数据库带回你正在查询的列的记录(IN运算符的左侧)那个集合中有一个值。

答案 6 :(得分:2)

使用

select * from items where id in (1,2);