我需要创建一个搜索值的MySQL查询,但我需要返回的结果具有相同的content_id
个数字(在搜索之前是未知的)。
这是我的表:
content_id item_id tag_id
1 4 2
1 4 3
1 4 4
1 4 5
2 5 7
2 5 8
3 6 8
3 6 9
目前我的问题是:
SELECT item_id FROM table WHERE tag_id IN (7,8)
这是回归:
Array
(
[0] => stdClass Object
(
[item_id] => 5
)
[1] => stdClass Object
(
[item_id] => 5
)
[2] => stdClass Object
(
[item_id] => 6
)
)
但我需要它返回(因为在这个例子中content_id = 2):
Array
(
[0] => stdClass Object
(
[item_id] => 5
)
)
我希望这是有道理的。
答案 0 :(得分:1)
您需要将content_id收集到组中,然后检查哪个组的计数超过1。
SELECT item_id FROM table group by content_id having count(content_id) > 1