MySQL:如何在IN内获得EACH值的LIMIT为1?

时间:2014-02-15 21:47:10

标签: mysql

我有一个SELECT * FROM blabla WHERE id IN(1,2,3,4,5)..如何在IN内获得每个值的LIMIT为1?

如果我这样做:SELECT * FROM blabla WHERE id IN(1,2,3,4,5)LIMIT 1我只得到1个结果,我想要的是1个,1个来自2个,1个来自3个等等..

2 个答案:

答案 0 :(得分:0)

您可以按ID进行分组。

SELECT * 
FROM blabla 
WHERE id IN (1,2,3,4,5) 
GROUP BY id

这应该每个id返回一行。

您可以重新考虑您的表结构,如果有多个行具有相同的ID,则使用ID的原因可能已过时......

答案 1 :(得分:0)

简单的小组将会做的伎俩

select *
from blabla bl
WHERE id IN (1,2,3,4,5)
group by id