Sql 如何选择销售为0的客户(订单明细表中无记录)

Sql 如何选择销售为0的客户(订单明细表中无记录),sql,Sql,如果包含的所有客户都有销售记录,如果该客户没有订单详细信息记录,则该客户甚至不会出现在以下查询中返回的行集中,则此查询已起作用。发生这种情况时,我如何补足零? 谢谢 似乎您只需要使用左连接 在这段代码中: select c.CustomerCode, sum(od.NetSales) AS Sales from customer c INNER JOIN orders o ON (c.CustomerCode = o.CustomerCode) INNER JOIN order_deta

如果包含的所有客户都有销售记录,如果该客户没有订单详细信息记录,则该客户甚至不会出现在以下查询中返回的行集中,则此查询已起作用。发生这种情况时,我如何补足零? 谢谢


似乎您只需要使用左连接

在这段代码中:

select c.CustomerCode, sum(od.NetSales) AS Sales from customer c
INNER JOIN orders o ON (c.CustomerCode = o.CustomerCode)    
INNER JOIN order_details od ON (o.OrderCode = od.OrderCode)
尝试使用:

select c.CustomerCode, sum(od.NetSales) AS Sales from customer c
LEFT JOIN orders o ON (c.CustomerCode = o.CustomerCode)    
INNER JOIN order_details od ON (o.OrderCode = od.OrderCode)

选择c.CustomerCode,NULLIFsumNULLIFod.NetSales,0,0作为来自客户的销售c LEFT JOIN orders o ON c.CustomerCode=o.CustomerCode LEFT JOIN order_详细信息o.OrderCode=od.OrderCode group by c.CustomerCode我无法从nullifod中获得零请详细解释您想要获得的信息。
select c.CustomerCode, sum(od.NetSales) AS Sales from customer c
LEFT JOIN orders o ON (c.CustomerCode = o.CustomerCode)    
INNER JOIN order_details od ON (o.OrderCode = od.OrderCode)