row_number()与over(partition by)给出两个不同的输出 [英] row_number() with over(partition by) gives two different output

查看:407
本文介绍了row_number()与over(partition by)给出两个不同的输出的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我将row_number()与over(partition by)一起使用时,它可以正常工作,但是当我在另一时间使用相同的查询时,我会得到稍微不同的输出,原因是partition by子句中的order by子句. "h2_lin">解决方案

请让我知道一些替代的解决方案...我存储row_number值,并且仅使用前3个值进行进一步的计算...因此,每次我运行查询时,我都会得到不同的结果价值.对于例如

银行名称行ID
----------------------------
IDBI LTD. 1
YES BANK LTD 2
IDBI LTD. 3
印度国家银行4


首先,当我运行查询

银行名称行ID
----------------------------
IDBI LTD. 1
IDBI LTD. 2
YES BANK LTD 3
印度国家银行4

我第二次运行查询


查询的一部分

idno = row_number()OVER(按cltcode排序或按defaultbank DESC排序,LEN(ACCNO)desc)


请任意1个可以帮助...找到解决方案


when i use row_number() with over(partition by) it works fine but when i use the same query at another time i get slightly different output and the reason is order by clause in the partition by clause.

解决方案

please let me know some alternate solution...i store the row_number values and use only top 3 values for further calculation...so each time i run the query i get different value. for eg

Bank Name rowid
----------------------------
IDBI LTD. 1
YES BANK LTD 2
IDBI LTD. 3
STATE BANK OF INDIA 4


first when i ran the query

Bank Name rowid
----------------------------
IDBI LTD. 1
IDBI LTD. 2
YES BANK LTD 3
STATE BANK OF INDIA 4

second time when i ran the query


part of query

idno = row_number() OVER(PARTITION BY cltcode ORDER BY defaultbank DESC,LEN(ACCNO) desc)


please any 1 can help...to find the solution


这篇关于row_number()与over(partition by)给出两个不同的输出的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆