sql 分组后 对应的组行之间 相减 求大侠帮忙

如图:   希望的是 分组后的 csValues 行 相减    最后结果  id  name  csID  csValues 1    张三     1     1 2   李四      2     -1    或者 分组后的对应的行 的最后一行 减去 开始第一行   对应的c#代码   var dataList = from item in dt.AsEnumerable().AsParallel() group item by item.Field("dyn_vehid") into m where m.Count() > 1 select new { dyn_vehid = m.Key, v_no = m.First().Field("v_no"), dyn_latitude = m.First().Field("dyn_latitude"), Dyn_Longitude = m.First().Field("Dyn_Longitude"), C_EnterpriseName = m.First().Field("C_EnterpriseName"), dyn_Time = "".TimeDiffMinute(m.First().Field("dyn_Time").ToString(), m.Last().Field("dyn_Time").ToString()) }; 求改成sql ? 谢谢    sql 测试数据语句  USE csDemo select * from csDemo CREATE table csTb( id int , name varchar(20), csID int , csValues int ) insert into csTb values(1,'张三',1,1) insert into csTb values(2,'张三',1,2) insert into csTb values(3,'李四',2,3) insert into csTb values(4,'李四',2,4) insert into csTb values(5,'李四',2,6) insert into csTb values(6,'王无',3,7) SELECT * FROM CsTB where csID IN( select csID from csTB group by csID HAVING COUNT(*)>1 )
梦里花落0921
浏览 443回答 1
1回答

潇湘沐

select name,csID,sum(csValues)*-1+2*max(csValues) from csTb group by name,csID having count(1)>1
打开App,查看更多内容
随时随地看视频慕课网APP