You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用单条MySQL查询获取全部客户及对应订单(包含无订单客户)

MySQL查询语句解答

可以通过单条查询实现需求,使用MySQL的LEFT JOIN(左外连接)即可满足保留所有客户记录、同时匹配对应订单的要求:

SELECT 
    c.ID,
    c.NAME,
    o.id AS `Order Id`,
    o.Status AS `Order Status`
FROM Customers c
LEFT JOIN Orders o ON c.ID = o.ClientID;

补充说明

  • 上述语句以Customers表为左表,关联Orders表的条件为客户ID等于订单关联的ClientID,没有对应订单的客户,查询结果中Order Id和Order Status字段会返回NULL。
  • 如果你需要无订单客户的对应字段显示为空字符串,和示例输出完全一致,可以用IFNULL函数做字段处理:
SELECT 
    c.ID,
    c.NAME,
    IFNULL(o.id, '') AS `Order Id`,
    IFNULL(o.Status, '') AS `Order Status`
FROM Customers c
LEFT JOIN Orders o ON c.ID = o.ClientID;

内容的提问来源于stack exchange,提问作者Thimotty

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 11:45:01