sql 存储过程中合并2条行的数据
表Test 字段(ID主键,WZMC,ShuLiang) 表中数据不止这两条数据,主要的用处是查询表中数据做个排行的,其中NO为自己as的,
例如: NO WZMC ShuLiang
1 鼠标 500
2 鼠标 200
合并后: NO WZMC ShuLiang
1 鼠标 700
我已写好的存储过程:
SELECT ROW_NUMBER() OVER (ORDER BY ShuLiang DESC) AS NO,WZMC,SUM(ShuLiang)AS ShuLiang FROM dbo.Test where 1=1
麻烦各位大虾在这基础上帮我改下,谢啦
[解决办法]
聚合函数 + groupby 不就可以了吗?
[解决办法]
你给的是语句,不是存储过程
语句给你改了一下。
IF EXISTS (SELECT 1 FROM SYSOBJECTS WHERE name = 'tba')BEGIN DROP TABLE tbaENDGOCREATE TABLE tba( NO INT, WZMC VARCHAR(10), ShuLiang INT)GOINSERT INTO tbaSELECT 1, '鼠标', 500 UNIONSELECT 2, '鼠标', 200SELECT NO=ROW_NUMBER() OVER (ORDER BY A.shuliang), A.* FROM (SELECT WZMC,SUM(ShuLiang) AS shuliangFROM tbaGROUP BY WZMC) AS A