SQl 分组查询group by 用法

图片说明

如图所示 Code字段是截取字符串截出来的 现在需求是按照Code去分组

SELECT [OperationNo]
,SUBSTRING(CodeNo,0,6)as Code
FROM 表名
group by all CodeNo

这是我写的SQl 老报错 不知道怎么改 求解答

你的substr错了吧,第一位是表示从哪位开始截取 ,第二位是表示取几位吧。

是SQL Server吗?
1)SELECT 子句中的字段要么用聚合函数统计,要么包含在 GROUP BY 子句中。
2)按 Code 分组和按 CodeNo 分组是不一样的。

        SELECT MAX([OperationNo]) AS MAX_No,
               SUBSTRING(CodeNo,0,6) AS Code
          FROM 表名
  GROUP BY ALL SUBSTRING(CodeNo,0,6)

使用group by的时候,select的字段必须是group by后面的字段或者是聚合函数

group by code 吧。。。