2015-06-27 100 views
0

有沒有一種方法可以查詢數據以顯示具有多個選擇器的多行?選擇具有多個匹配ID的多行

,如:

SELECT * FROM `book` WHERE `book`.id = 1 AND `book`.id = 2; 

表:

id name 
1 book1 
2 book2 
3 book3 
4 book4 

我逼債想循環每個ID是有利的。

+0

假設你使用反引號逃脫標識符,我與標記'mysql' RDBMS標籤這個問題。 – potashin

回答

2

一個解決方案,您有,但你犯了一個錯誤。一個ID不能同時爲12,因此您需要使用OR來返回那些行爲12

SELECT * FROM `book` WHERE `book`.id = 1 OR `book`.id = 2; 

一個稍微簡單的符號是:

SELECT * FROM `book` WHERE `book`.id in (1, 2); 
3

嗯,是的,你可以使用in,但這是一樣多or,不and - 一個值不能等於兩個不相等的值一次:

select * 
from `book` 
where `book`.id in(1, 2)