select
games_exchange.u_exchange_id
from
games_exchange
where
( games_exchange.game_id = 7
AND games_exchange.exchange_type = 1 )
AND (
games_exchange.game_id = 7
AND games_exchange.exchange_type = 2 )
group by
games_exchange.u_exchange_id
HAVING
COUNT( games_exchange.u_exchange_id ) = 2
以上查询的预期结果是u\u exchange\u id=171。但是上面的查询返回u\u exchange\u id=171&170。
[表格截图在这里][2]
1条答案
按热度按时间3gtaxfhh1#
经过大量研究,我想出了解决问题的办法。实际上,我在having子句中使用where条件是错误的。下面的代码给出了我的问题的建议解决方案
注意:我通过在两个部分的游戏id上使用foreach()实现了这一点,并为每个id动态添加了子查询。