嘿我只是想知道为什么以下查询在我的表中返回空格而不是0 ?,因为在它应该返回0时,driver_stats表中没有任何内容?非常感谢任何帮助。
由于
SELECT
SUM(IF(qual_pos = '1', 1,0)) AS poles,
SUM(IF(race_pos <= '3', 1,0)) AS podiums,
SUM(IF(race_pos = '1', 1,0)) AS victories,
SUM(overtakes) AS overtakes
FROM driver_stats s
left join drivers d on d.drivers_id = s.drivers_id
WHERE d.team_id = '$row[team_id]'
答案 0 :(得分:0)
如果您将left join
更改为right join
怎么办?或者只是移动你的查询,所以它是
drivers d left join driver_stats s
答案 1 :(得分:0)
如果SUM()
在SQL中为零,则结果为NULL
。我同意你的看法,答案是零是更明智的,但事实就是如此。我建议使用
COALESCE(SUM(IF(qual_pos = '1', 1,0)), 0) AS poles