2011-06-15 76 views
0

我有一个表MySQL查询的WHERE与和

id|customer_id|comment 
1 34      good 
2 23      bad 
3 34      regular 
4 76      longterm 
5 34      bad 
6 23      good 

我们可以看到,一个CUSTOMER_ID有不同的意见(例如 - 34具有良好的定期坏) 我想从上面的表,其中注释拉记录是“好也坏”,并由customer_id组,所以在结果中我应该看到记录ID => 1,5,2,6

有人可以帮我写这个where子句。

视为

回答

3

要让一行数据引用另一行,您需要一个连接。在这种情况下,你会想加入评论自相:

select distinct a.customer_id 
from comments a 
join comments b on a.customer_id = b.customer_id and a.id < b.id 
where a.comment = 'good' 
and b.comment = 'bad' 

我选择了a.id < b.id语法来避免这样做在两个方向上同时加入,从而重复的工作。通过指定不同,您将只看到每个客户一次。

+0

thanks.i认为这工作正常。 – Jay 2011-06-15 19:02:00