求SQL过虑过分组数据

dafeige41 2015-12-04 04:25:02
PsotionLevel DeptID PositionID
4 A38A556D-0413-445D-8AEB-618B8B94AE15 92C2AF0D-A859-4E91-A67D-569F3595B9EE
4 5FF6EEAA-C2DA-40C1-956E-8782496B2560 B941CAD1-FB88-43E0-B4FA-A7F888CB955D
5 5FF6EEAA-C2DA-40C1-956E-8782496B2560 ED64A7F3-80CA-48A7-B5F8-A5D3300CB018
6 5FF6EEAA-C2DA-40C1-956E-8782496B2560 BA2BA2AC-B7FE-4EB4-9E5D-D40E07F05821
7 46B8C7E1-8D52-4556-AF4C-1E1A0D37DAFD 3CC20660-2D5B-461B-859E-425D780F29B2

需要过虑部门一样的数据,保留PositionLevel最大的一条以及其他数据。

结果:

PsotionLevel DeptID PositionID
4 A38A556D-0413-445D-8AEB-618B8B94AE15 92C2AF0D-A859-4E91-A67D-569F3595B9EE
6 5FF6EEAA-C2DA-40C1-956E-8782496B2560 BA2BA2AC-B7FE-4EB4-9E5D-D40E07F05821
7 46B8C7E1-8D52-4556-AF4C-1E1A0D37DAFD 3CC20660-2D5B-461B-859E-425D780F29B2
...全文
100 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
中国风 2015-12-05
  • 打赏
  • 举报
回复
SELECT * FROM DeptTable AS a WHERE NOT EXISTS(SELECT 1 FROM DeptTable WHERE DeptID=a.DeptID AND PsotionLevel>a.PsotionLevel)
xdashewan 2015-12-04
  • 打赏
  • 举报
回复
按DeptID分组,取max(PsotionLevel)取出后再按PsotionLevel DeptID取PositionID

22,300

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧