我正在尝试选择用户评分 (user.rating) 是否大于 6 或用户是否有超过 100 笔交易(交易表计数)。基本上计算用户在何处进行了多少笔交易(交易计数 >= 100 或用户评分 >= 6)。
SELECT *
FROM `user`
JOIN (SELECT COUNT(*)
FROM transaction
WHERE transaction.user_id=user.id
AND type='L'
AND status='S') AS tcount
WHERE (user.rating >= '6' OR tcount >= '100')
最佳答案
只是另一个可能的答案。我已经创建了简化的模式来测试它,请尝试并告诉我结果。
SELECT *
FROM user
WHERE user.rating >= 6 OR (SELECT COUNT(*) FROM transaction WHERE user_id = user.id and type = 'L' and status = 'S') >= 100;
关于mysql - SQL JOIN COUNT 然后在 where 子句中使用该计数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43150895/