如何显示没有价值的数据

时间:2017-05-16 21:58:26

标签: mysql sql

我有两张桌子,这些是我的桌子

pemesanan

pemesanan

detail_pemesanan

detail_pemesanan

我试过这个查询

select pemesanan.tgl_pesan, 
  SUM(detail_pemesanan.jumlah) as jumlah
FROM pemesanan 
JOIN detail_pemesanan 
 ON pemesanan.id_pemesanan = detail_pemesanan.id_pemesanan 
WHERE pemesanan.tgl_pesan >= DATE_ADD(now(), INTERVAL -6 day) 
GROUP BY pemesanan.tgl_pesan

但它只显示tgl_pesan上有jumlah值的tgl_pesan

我想要的是拥有所有jumlah,即使它在Array#grep上没有价值。有什么解决方案吗?

1 个答案:

答案 0 :(得分:0)

我认为您需要left join

select p.tgl_pesan, SUM(dp.jumlah) as jumlah
FROM pemesanan p JOIN
     detail_pemesanan dp
     ON p.id_pemesanan = dp.id_pemesanan 
WHERE p.tgl_pesan >= DATE_ADD(now(), INTERVAL -6 day) 
GROUP BY p.tgl_pesan;

如果您确实想要零而不是NULL,请使用COALESCE(SUM(dp.jumlah), 0)