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

SQL日期字段去重统计:计算每位销售代表的销售天数

SQL统计每位销售代表的不同销售天数

我们需要从存储销售代表姓名和销售日期时间的表中,统计每位销售代表有销售记录的不同天数。

原始表数据

销售代表姓名销售日期
A1/2/2022 2:03:32 PM
A1/2/2022 1:11:42 PM
A1/30/2022 5:25:53 PM
A1/30/2022 4:28:20 PM
B1/5/2022 3:15:22 PM
A1/12/2022 12:04:44 PM
B1/15/2022 5:15:43 PM

预期结果

销售代表姓名销售天数
A3
B2

解决方案

核心思路:按销售代表分组,提取销售日期的纯日期部分(忽略时分秒),对去重后的日期进行计数。

不同数据库的SQL实现:

  1. MySQL/MariaDB
SELECT 
    `销售代表姓名`,
    COUNT(DISTINCT DATE(`销售日期`)) AS `销售天数`
FROM 
    你的表名
GROUP BY 
    `销售代表姓名`;
  1. SQL Server
SELECT 
    [销售代表姓名],
    COUNT(DISTINCT CAST([销售日期] AS DATE)) AS [销售天数]
FROM 
    你的表名
GROUP BY 
    [销售代表姓名];
  1. Oracle
SELECT 
    销售代表姓名,
    COUNT(DISTINCT TRUNC(销售日期)) AS 销售天数
FROM 
    你的表名
GROUP BY 
    销售代表姓名;
  1. PostgreSQL
SELECT 
    "销售代表姓名",
    COUNT(DISTINCT DATE("销售日期")) AS "销售天数"
FROM 
    你的表名
GROUP BY 
    "销售代表姓名";

逻辑说明

  • DATE()/CAST(... AS DATE)/TRUNC():从带时分秒的日期时间中提取纯日期,同一日期的不同时间会被转为相同值。
  • DISTINCT:确保同一日期仅被计数一次。
  • GROUP BY 销售代表姓名:按销售代表分组,得到每位代表的独立统计结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 12:02:44