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

在SQL Server中统计Road计数大于1的Code分组记录

SQL语句验证与修正

原数据表

RoadCode
A1
B1
C2
D2
E1
F3
H4

需求

统计Code对应的Road记录数大于1的结果,输出列名为Count(记录数)和Code。

原SQL存在的问题

原SQL语句有4处明显问题:

  • 字段名不匹配:原表字段为Code,但语句中使用了不存在的Road_Code字段;
  • 多余的DISTINCT:GROUP BY已经按Code分组,每组仅返回一条结果,添加DISTINCT属于冗余操作,无意义;
  • HAVING条件错误:需求是筛选记录数大于1的分组,原语句用COUNT(Distinct [Road])会统计去重后的Road数量,若存在重复Road值会导致统计结果不符合预期,应直接统计记录数;
  • 缺少列别名:统计结果的计数列未指定Count别名,无法匹配预期输出的列名。

修正后的SQL语句

SELECT COUNT([Road]) AS [Count], [Code]
FROM [Combined]
GROUP BY [Code]
HAVING COUNT([Road]) > 1

验证结果

执行修正后的SQL,输出结果与预期完全一致:

CountCode
31
22

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 11:10:26