2016-02-10 64 views
1

對於array = [1,1,1,2],DB表的條目爲ids-1,2爲具有相同值的WHERE IN數組獲取不同的行

查詢 - >「SELECT * FROM table WHERE id in array"收益只有兩排

是否有您可以建立一個在線表UNION ALL,然後INNER JOIN你的表的方式,其中將返回4行,而不是

+0

沒有在表中只有兩排 –

+0

可以有更多 –

+0

如果有隻有兩個表中的行,然後這一切,你會從該查詢得到? –

回答

0

?它:

SELECT t2.* 
FROM (
    SELECT 1 AS v UNION ALL SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 2 
) AS t1 
INNER JOIN mytable AS t2 ON t1.v = t2.id