TSQL ROW_NUMBER() OVER (PARTITION BY... ORDER BY....) [英] TSQL ROW_NUMBER() OVER (PARTITION BY... ORDER BY....)

查看:38
本文介绍了TSQL ROW_NUMBER() OVER (PARTITION BY... ORDER BY....)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我可以在没有分区的情况下做 row_number 吗?(请参阅帖子末尾的数据)我可以使用此语句来获取 ORDER#.

Can I do row_number without partition? (see data at end of post) I can use this statement to get an ORDER#.

     ROW_NUMBER() OVER (PARTITION BY LOG_ID ORDER BY ORDER_ID) 

对获取 LOG# 有什么建议吗?

Any suggestions to get the LOG# ?

-LOG#   ORDER#  LOG_ID  ORDER_ID
-1      1       340580  387373215
-1      2       340580  387373225
-2      1       340925  387812330
-3      1       340935  388093450
-4      1       340945  387615845
-5      1       340990  386433405
-6      1       341675  376247120
-6      2       341675  376247130
-6      3       341675  388352445

推荐答案

SELECT
    - DENSE_RANK() OVER (ORDER BY LOG_ID) AS "#LOG",
    ROW_NUMBER() OVER (PARTITION BY LOG_ID ORDER BY ORDER_ID) AS "#ORDER",
    LOG_ID,
    ORDER_ID
FROM UnnamedTable

这篇关于TSQL ROW_NUMBER() OVER (PARTITION BY... ORDER BY....)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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