加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 如何使用“Partition By”或“Max”?

发布时间:2020-12-12 16:31:01 所属栏目:MsSql教程 来源:网络整理
导读:我有下表(my_data): year | X | Y-----+-----+-----2010 | A | 102011 | A | 202011 | B | 992009 | C | 302010 | C | 40 什么是最佳/最小的SQL语句,仅检索与最高年份相关的数据并按“X”分组,如下所示: year | X | Y-----+-----+-----2011 | A | 202011 |
我有下表(my_data):
year |  X  |  Y
-----+-----+-----
2010 |  A  |  10
2011 |  A  |  20
2011 |  B  |  99
2009 |  C  |  30
2010 |  C  |  40

什么是最佳/最小的SQL语句,仅检索与最高年份相关的数据并按“X”分组,如下所示:

year |  X  |  Y
-----+-----+-----
2011 |  A  |  20
2011 |  B  |  99
2010 |  C  |  40

请注意,此结果表将用于连接.

解决方法

select year,x,y
from (
      select year,y,max(year) over(partition by x) max_year
      from my data
      )
where  year = max_year

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读