我想选择最大值 s2.maxcol 或 0(如果没有条目)。 到目前为止,这是可行的,但如果没有相应的条目,则不会返回:
SELECT MAX( s2.maxcol) AS max_col, s1 . *
FROM table AS s1
LEFT JOIN table AS s2 ON s2.parent = s1.id
GROUP BY s1.id
HAVING max_col <100
但我也希望左连接返回没有相应条目的行(因此 max(s2.maxcol) 应该为 0。
我该如何解决这个问题?
最佳答案
我只是快速浏览了一下,现在就必须离开。但也许COALESCE
可能会有所帮助。这是info
也许是这样的? (未经测试!)
SELECT COALESCE(MAX(s2.maxcol), 0) AS max_col, s1 . *
FROM table AS s1
LEFT JOIN table AS s2 ON s2.parent = s1.id
GROUP BY s1.id
HAVING max_col <100
希望有帮助。再见!
关于MYSQL HAVING 包含不存在的条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9150902/