【问题标题】:How to set 0 when the count row display Null?计数行显示Null时如何设置0?
【发布时间】:2020-09-29 18:09:36
【问题描述】:

所以,我有这个 sql:

SELECT program.BilanganTerhad - IFNULL(COUNT(daftarprogram.KodProgram), 0) AS kiraan
FROM program, daftarprogram
WHERE program.KodProgram = daftarprogram.KodProgram
  AND daftarprogram.KodProgram = '19'

如何将 null COUNT() 值设置为 0?例如:10 - null = null 而不是 10 - 0 = 10。
我需要计数变为 0,而不是 null。

This is value from table1

While this is value from table2

我想从 table1 中减去值并用 count(kodprogram) 减去

问题是我想根据 where condition = KodProgram 从 table2 中用 count(KodProgram) 从 table1 中减去值

【问题讨论】:

  • COUNT() 永远不会返回 NULL
  • 提供样本数据和期望的结果。学习正确、明确、标准、可读的JOIN 语法。

标签: mysql sql count null ifnull


【解决方案1】:

COUNT() 永远不会返回 NULL。也就是说,您的查询格式不正确(除了使用过时的连接语法。BilanganTerhadSELECT 中,但它是一个聚合查询。

也许你打算:

SELECT p.BilanganTerhad - COUNT(*) AS kiraan
FROM program p JOIN
     daftarprogram dp
    ON p.KodProgram = dp.KodProgram 
WHERE dp.KodProgram = '19'
GROUP BY p.BilanganTerhad;

【讨论】:

  • 事情是我想在 2 个表之间减去 .. 这是 table1.BilanganTerhad - 减去 COUNT(table2.KodProgram)
猜你喜欢
  • 1970-01-01
  • 2021-10-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-15
  • 2023-01-12
  • 2012-04-30
相关资源
最近更新 更多