我对这个SQL查询有一些问题,我有两个表:
cliente:
id | dni | Nombre
1 | 10296450823 | John Doe
2 | 10296780893 | Mark Doe
deuda
id | monto_deuda | id_cliente
1 | 125.00 | 1
1 | 125.00 | 1
但是当我运行此查询时:
SELECT dni AS Identidad, SUM(de.monto_deuda) as deuda FROM cliente LEFT JOIN deudas de ON de.id_cliente = cliente.id
我收到了这个结果:
您可以看到,我只获得身份证号为1的客户,但我没有收到其他没有任何登记表“deuda”的客户。
我希望得到所有客户,即使他们没有“deuda”表上的任何记录
我怎么能这样做? 感谢
答案 0 :(得分:0)
您需要对数据进行分组,以便为每个组获得sum()
,而不是完整的结果
SELECT dni AS Identidad,
SUM(de.monto_deuda) as deuda
FROM cliente
LEFT JOIN deudas de ON de.id_cliente = cliente.id
GROUP BY dni