gpt4 book ai didi

mysql - SQL 2 Left Join 带计数的查询

转载 作者:可可西里 更新时间:2023-11-01 08:26:03 24 4
gpt4 key购买 nike

我有一个 SQL 查询:

SELECT table1.column1, table2.column2, table1.column2 
FROM table1 LEFT JOIN table2 (ON table1.column1=table2.column2)

我想做的是向表中添加另一个左连接,但也要计入该左连接数据,例如:

SELECT table1.column1, table2.column2, table1.column2, COUNT(table3.column1) 
FROM table1 LEFT JOIN table2 ON table1.column1=table2.column2
LEFT JOIN table3 ON table1.column1=table3.column1

代码似乎不起作用,可能是哪里出了问题?

最佳答案

count 是一个聚合函数 - 如果没有 group by 子句,您不能将它与单行函数混合使用。解决此问题的一种方法是加入子查询而不是直接加入 table3 并在那里应用 group by:

SELECT    table1.column1, table2.column2, table1.column2, cnt
FROM table1
LEFT JOIN table2 ON table1.column1 = table2.column2
LEFT JOIN (SELECT column1, COUNT(*) AS cnt
FROM table3
GROUP BY column1) table3 ON table1.column1=table3.column1

关于mysql - SQL 2 Left Join 带计数的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35679948/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com