ROW_NUMBER()OVER(PARTITION BY)显示Group By子句的重复结果

尼克·G

我创建了以下查询,以显示一年的“最后”值的总和,通常这是一个12月的值,但是该年可能会在任何月份结束,因此我想将每个目标的最后一个值加在一起。我让它工作99%,但是[year]值中有一些随机重复项。

WITH endBalances AS (
        SELECT ROW_NUMBER() OVER (PARTITION By GoalMonteCarloHeaderID, Year(Convert(date,MonthDate)) Order By Max(Month(Convert(date,MonthDate))) desc) n, Max(Month(Convert(date,MonthDate))) maxMonth, GrowthBucket, WithdrawalBucket, NoTaxesBucket,
        Year(MonthDate) [year]
        From GoalMonteCarloMedianResults mcmr
        full join GoalMonteCarloHeader mch on mch.ID = mcmr.GoalMonteCarloHeaderID
        full join GoalChartData gcd on gcd.ID = mch.GoalChartDataID and gcd.TypeID = 2
        inner join Goal g on g.iGoalID = gcd.GoalID
        where g.iTypeID in (1) and g.iHHID = 850802
        group by GoalMonteCarloHeaderID, MonthDate, GrowthBucket, WithdrawalBucket, NoTaxesBucket
)
SELECT [year], Sum(GrowthBucket) GrowthBucket, Sum(WithdrawalBucket) WithdrawalBucket,Sum(NoTaxesBucket) NoTaxesBucket, maxMonth
From endBalances 
where [year] is not null and n=1
Group By [year], maxMonth
order by [year] asc

在数据库结果中显示两个随机重复项; 在此处输入图片说明

您可以在图像中看到两个示例,其中年份重复且显示的时间不仅仅是一年中的最后一个月。我的查询中的group by或PARTITION BY()是否做错了?我对T-SQL的此功能不是最熟悉。

爱因斯坦十世之谜

T-SQL对此具有很好的功能,在MySQL中没有直接等效的功能。

ROW_NUMBER() OVER (PARTITION BY [year] ORDER BY MonthDate DESC) AS rn

那么rn = 1的任何内容将是一年中的最后一个条目。

这个问题的答案有一些想法:
MySQL中的ROW_NUMBER()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在where子句中使用ROW_NUMBER()OVER(PARTITION BY ...)选择stmt

来自分类Dev

在where子句中使用ROW_NUMBER()OVER(PARTITION BY ...)选择stmt

来自分类Dev

ROW_NUMBER()OVER(PARTITION BY ...)使用麻烦

来自分类Dev

如何将linq中的row_number()over子句写到Entity Framework

来自分类Dev

如何将linq中的row_number()over子句写到Entity Framework

来自分类Dev

T-SQL:第一行的CTE row_number over()错误结果

来自分类Dev

Microsoft Access查询重复ROW_NUMBER

来自分类Dev

Microsoft Access查询重复ROW_NUMBER

来自分类Dev

ROW_NUMBER 计数返回无效结果

来自分类Dev

使用row_number()的无效列名OVER(PARTITION BY)

来自分类Dev

替代ROW_NUMBER()OVER(PARTITION BY x ORDER BY z)

来自分类Dev

替代ROW_NUMBER()OVER(PARTITION BY x ORDER BY z)

来自分类Dev

ROW_NUMBER OVER PARTITION BY ORDER BY IN Entity Framework

来自分类Dev

如何使用IN子句显示结果?

来自分类Dev

如何使用IN子句显示结果?

来自分类Dev

显示结果无重复

来自分类Dev

如何在UPDATE子句中使用ROW_NUMBER()?

来自分类Dev

在 SQL Server 的 WHERE 子句中使用 ROW_NUMBER()

来自分类Dev

如何用GROUP BY子句消除重复字段?

来自分类Dev

SQL Group By子句如何划分查询结果

来自分类Dev

如何按字母顺序显示row_number

来自分类Dev

Row_number()分区依据-对于重复值

来自分类Dev

Rails循环显示重复结果

来自分类Dev

多选查询,显示重复结果

来自分类Dev

使用ROW_NUMBER()时对结果进行排序

来自分类Dev

在ROW_NUMBER()上进行过滤正在更改结果

来自分类Dev

熊猫:前N行,每组前N行,等效于ROW_NUMBER OVER(PARTITION BY ... ORDER BY ...)

来自分类Dev

如何按未选择的列排序(ROW_NUMBER()OVER PARTITION BY)

来自分类Dev

Tableau 上的 SQL Vertica:row_number over partition by multiple fields 错误

Related 相关文章

  1. 1

    在where子句中使用ROW_NUMBER()OVER(PARTITION BY ...)选择stmt

  2. 2

    在where子句中使用ROW_NUMBER()OVER(PARTITION BY ...)选择stmt

  3. 3

    ROW_NUMBER()OVER(PARTITION BY ...)使用麻烦

  4. 4

    如何将linq中的row_number()over子句写到Entity Framework

  5. 5

    如何将linq中的row_number()over子句写到Entity Framework

  6. 6

    T-SQL:第一行的CTE row_number over()错误结果

  7. 7

    Microsoft Access查询重复ROW_NUMBER

  8. 8

    Microsoft Access查询重复ROW_NUMBER

  9. 9

    ROW_NUMBER 计数返回无效结果

  10. 10

    使用row_number()的无效列名OVER(PARTITION BY)

  11. 11

    替代ROW_NUMBER()OVER(PARTITION BY x ORDER BY z)

  12. 12

    替代ROW_NUMBER()OVER(PARTITION BY x ORDER BY z)

  13. 13

    ROW_NUMBER OVER PARTITION BY ORDER BY IN Entity Framework

  14. 14

    如何使用IN子句显示结果?

  15. 15

    如何使用IN子句显示结果?

  16. 16

    显示结果无重复

  17. 17

    如何在UPDATE子句中使用ROW_NUMBER()?

  18. 18

    在 SQL Server 的 WHERE 子句中使用 ROW_NUMBER()

  19. 19

    如何用GROUP BY子句消除重复字段?

  20. 20

    SQL Group By子句如何划分查询结果

  21. 21

    如何按字母顺序显示row_number

  22. 22

    Row_number()分区依据-对于重复值

  23. 23

    Rails循环显示重复结果

  24. 24

    多选查询,显示重复结果

  25. 25

    使用ROW_NUMBER()时对结果进行排序

  26. 26

    在ROW_NUMBER()上进行过滤正在更改结果

  27. 27

    熊猫:前N行,每组前N行,等效于ROW_NUMBER OVER(PARTITION BY ... ORDER BY ...)

  28. 28

    如何按未选择的列排序(ROW_NUMBER()OVER PARTITION BY)

  29. 29

    Tableau 上的 SQL Vertica:row_number over partition by multiple fields 错误

热门标签

归档