gpt4 book ai didi

sql - 如何在sql中获取按ID分组的最大行数

转载 作者:行者123 更新时间:2023-12-04 14:06:26 24 4
gpt4 key购买 nike

说我有这张 table :
(列: Row 是基于列 ID 的计数)

ID  | Row  | State | 
1 | 1 | CA |
1 | 2 | AK |
2 | 1 | KY |
2 | 2 | GA |
2 | 3 | FL |
3 | 1 | WY |
3 | 2 | HI |
3 | 3 | NY |
3 | 4 | DC |
4 | 1 | RI |

我想生成一个新列,该列在 Row 中的数字最高。按 ID 分组的列每行的列。我将如何做到这一点?我一直在搞乱 MAX()、GROUP BY 和一些分区,但每次都遇到不同的错误。很难正确地解决这个问题。这是我的目标输出:
ID  | Row  | State | MaxRow
1 | 1 | CA | 2
1 | 2 | AK | 2
2 | 1 | KY | 3
2 | 2 | GA | 3
2 | 3 | FL | 3
3 | 1 | WY | 4
3 | 2 | HI | 4
3 | 3 | NY | 4
3 | 4 | DC | 4
4 | 1 | RI | 1

最佳答案

使用MAX的窗口版:

SELECT ID, Row, State, MAX(Row) OVER (PARTITION BY ID) AS MaxRow
FROM mytable

Demo here

关于sql - 如何在sql中获取按ID分组的最大行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31612451/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com