如果mysql上只有数据,则显示数据总和

时间:2018-05-18 02:31:02

标签: mysql sql

enter image description here如果没有空,我想要显示数据。我的疑问是:

SELECT     t.idtest,
           t.testkhusus,
           t.biayakhusus,
           t.uangmuka,
           t.total,
           t.tanggallunas,
           t.biayatambahan,
           p.namaperusahaan,
           (Sum(jth.tarifpsikolog) + Sum(jth.tarifadministrasi) + Sum(jth.tariftester)) AS biayadll
FROM       test t
INNER JOIN perusahaan p
ON         t.perusahaan_idperusahaan=p.idperusahaan
INNER JOIN (jadwaltest jt
INNER JOIN jadwaltest_has_biayatimelostcost jth
ON         jt.idjadwaltest = jth.idjadwaltest)
ON         t.idtest = jt.test_idtest
WHERE      t.tanggallunas BETWEEN '2018-05-22' AND '2018-05-23'

如果空白数据不显示该行。

我希望mysql_num_rows()的结果是0而不是1。

请帮忙,谢谢.. [![在此处输入图片说明] [2]] [2]

1 个答案:

答案 0 :(得分:0)

您需要在GROUP BY中定义汇总列。

检查我的简单小提琴:

http://sqlfiddle.com/#!9/cae193/5

select SUM(amount) 
from t1
where 0=1;

select SUM(amount) 
from t1
where 0=1
group by id

在第一种情况下,即使没有任何要概括的内容,它也会返回null秒的空行。

但是在GROUP BY的第二个中,它不返回任何行。

在你的情况下可能是GROUP BY t.idtest或任何你想要的和/或你需要的