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

如何编写SQL查询指定日期范围内含重复signum的所有条目

解决方案

场景1:仅统计指定日期范围内的重复signum

如果你需要的是只看2021年范围内的signum重复情况,不考虑范围外的记录,使用如下写法:

SELECT * 
FROM dmt_teamresource 
WHERE 
  startdate BETWEEN '2021-01-31' AND '2021-12-31'
  AND signum IN (
    SELECT signum 
    FROM dmt_teamresource
    WHERE startdate BETWEEN '2021-01-31' AND '2021-12-31'
    GROUP BY signum 
    HAVING COUNT(signum) > 1
  );

场景2:signum全表重复且条目落在日期范围内

如果你需要的是signum在整个表中存在重复(无论日期),且对应条目本身在2021年范围内,使用如下写法:

SELECT * 
FROM dmt_teamresource 
WHERE 
  startdate BETWEEN '2021-01-31' AND '2021-12-31'
  AND signum IN (
    SELECT signum 
    FROM dmt_teamresource
    GROUP BY signum 
    HAVING COUNT(signum) > 1
  );

注意事项

  • 原写法中的is between是语法错误,BETWEEN关键字前不需要加IS
  • 如果startdate是带时分秒的DATETIME类型,建议将结束日期改为'2021-12-31 23:59:59',避免遗漏12月31日当天带时间的记录

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 15:54:03