2010-10-02 96 views
2

我在下面有一个查询,想知道是否有可能获得超过1个结果。我想获得最近的4个条目。如何在SQL子查询中返回多个结果?

谢谢!

select c.email,c.text,m.alertDataID 
from client_users as c, monitor_alerts as a, monitor_alerts_data as m 
where c.id=a.userID and a.alertID=m.alertID and 
m.alertDataID = (SELECT alertDataID FROM monitor_alerts_data ORDER BY alertDataID DESC LIMIT 1) 
LIMIT 4 

回答

5

使用IN,而不是=

... and m.alertDataID IN (SELECT alertDataID FROM ...) 

也不要你的子查询限制LIMIT 1。子查询中需要LIMIT 4

+0

我的mysql版本不支持限制&在/所有/任何/一些子查询...任何其他的想法? – 2010-10-02 02:24:22

+0

然后,不要在子查询中使用LIMIT,只需限制外部结果集。 PS。你使用的是什么版本的MySQL? – wuputah 2010-10-02 02:25:00

+0

这工作......谢谢BTW我正在使用5.0.51a-3 – 2010-10-02 02:28:55