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

Oracle SQL三表关联实现按订单类型统计订单量及去重客户数的方法

实现该统计需求的SQL查询方案

核心思路

不需要关联CUSTOMERS表即可完成统计,你需要用到的客户ID字段已经存在于CUSTOMERS_ORDERS关联表中,直接关联订单表和关联表即可,执行效率更高。

具体SQL代码

SELECT
  o.ORDER_TYPE AS order_type,
  COUNT(o.ORDER_ID) AS `Count(orders)`,
  COUNT(DISTINCT co.CUSTOMER_ID) AS `count(distinct(customer_id))`
FROM ORDERS o
INNER JOIN CUSTOMERS_ORDERS co
  ON o.ORDER_ID = co.ORDER_ID
GROUP BY o.ORDER_TYPE;

补充说明

  • 如果你需要统计没有关联任何客户的订单,把上面的INNER JOIN改成LEFT JOIN即可,这类订单的客户计数会显示为0
  • 如果你的数据库对字段大小写敏感,注意调整字段名和表名的大小写匹配实际表结构

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.17 22:24:07