真的很想弄清楚为什么 SQL 查询没有通过。我认为结构有点错误,但无法弄清楚到底在哪里。对表格的引用都是正确的。
SELECT tap_questionnaires.id,
tap_questionnaires.NAME,
tap_questionnaires.active,
tap_useranswers_ip.questionnaire_id,
Count(tap_useranswers_ip.ip)
FROM tap_questionnaires
LEFT JOIN tap_useranswers_ip
ON tap_questionnaires.id = tap_useranswers_ip.questionnaire_id
WHERE author_email = admin@admin.com
最佳答案
如果您使用 count,则需要对 select 子句中的其他列使用 group by。
SELECT TAP_questionnaires.id, TAP_questionnaires.name, TAP_questionnaires.active, TAP_useranswers_ip.questionnaire_id, COUNT(TAP_useranswers_ip.ip) FROM TAP_questionnaires LEFT JOIN TAP_useranswers_ip on TAP_questionnaires.id=TAP_useranswers_ip.questionnaire_id WHERE author_email="admin@admin.com"
group by TAP_questionnaires.id, TAP_questionnaires.active
我认为 TAP_questionnaires.name 没有必要,因为我认为它取决于 TAP_questionnaires.id。 TAP_useranswers_ip.questionnaire_id 与 TAP_questionnaires.id 的值相同
希望有帮助!
关于mysql - 在带有 JOIN 的语句中嵌套 COUNT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44640525/