有没有办法查询数据以显示多行选择器?
像:
SELECT * FROM `book` WHERE `book`.id = 1 AND `book`.id = 2;
表:
id name
1 book1
2 book2
3 book3
4 book4
我认为每个id的循环是有利的。
答案 0 :(得分:3)
嗯,是的,您可以使用in
,但这与多个or
相同,而不是and
- 一个值不能等于两个不相等的值马上:
select *
from `book`
where `book`.id in(1, 2)
答案 1 :(得分:2)
你有一个解决方案,但是你犯了一个错误。 ID不能同时为1
和2
,因此您需要使用OR
来返回1
或2
的行。
SELECT * FROM `book` WHERE `book`.id = 1 OR `book`.id = 2;
稍微简单的表示法是:
SELECT * FROM `book` WHERE `book`.id in (1, 2);