我使用以下查询列出数据库,但我没有得到结果,它看起来像sql组中的一些错误
SELECT
list_up.title_ad AS title_ad,
list_up.username AS username,
COUNT(cusers.points) AS userpoints,
COUNT(clicks_up.id) AS countedone
FROM
list_up
LEFT JOIN clicks_up ON (clicks_up.ad_id = list_up.id)
LEFT JOIN users ON (users.username = list_up.username) GROUP BY list_up.id, users.username ORDER BY list_up.id
答案 0 :(得分:1)
确实GROUP BY条款有问题......
GROUP BY list_up.id, users.username
这些字段都不是SELECT列表的一部分...
因此ORDER BY可以引用不属于SELECT列表的字段,GROUP BY子句要求字段位于SELECT列表中。
第二个字段很容易修复,您可以使用list_up.username,这两个字段相同,如JOIN子句中所示。
对于第一个,您可能只需要将list_up.id添加到SELECT列表中。