我有如下表:MySQL的反对multple值匹配
nid | tag_id
--------------
1 | 213
1 | 78
2 | 938
2 | 1002
2 | 8573
2 | 5
3 | 3957
3 | 487
4 | 56
我想中检索,其中TAG_ID匹配多个值说1002,938,8573一个NID。
我开始用下面的查询:
SELECT nid,GROUP_CONCAT(DISTINCT tag_id ORDER BY tag_id) tag_ids FROM table GROUP BY nid
返回:
nid | tag_ids
--------------
1 | 78,213
2 | 5,938,1002,8573
3 | 487,3957
4 | 56
但我还没有发现任何东西那将让我再次我一套符合tag_ids列值。我需要它匹配所有的不只是任何价值观。
也许我的做法是错误的,很高兴看到不同的方法。
任何输入非常赞赏。
感谢 史蒂夫
我不太清楚我可以如何使用having子句来匹配几个值。你能给我一个例如吗? – 2011-02-04 10:56:28
HAVING X OR Y OR Z,maybe .... – duffymo 2011-02-04 11:10:11