SQL 查询问题

不罗嗦直接看数据:

A

1

1

2

4

在A的后面再添加一列Num排名,根据A的值来确定Num

A         Num

1            1

1            1

2            2

4            3

呼如林
浏览 535回答 17
17回答

达令说

用一个简单的dense_Rank()函数即可 ------分组显示示例IF NOT OBJECT_ID('[XXX]') IS NULLDROP TABLE [XXX]GOCREATE TABLE [XXX]([TID] int)goINSERT [XXX] SELECT 1 UNION ALLSELECT 1 UNION ALLSELECT 2 UNION ALLSELECT 4GO----select * from XXX/*TID1124*/select TID,(dense_Rank() over (order by TID asc)) as numfrom xxx/*TID num1 11 12 24 3*/

森栏

num的公式是??

慕容森

不是,数据中没有这一列,也不是公式

慕妹3242003

distinct    order by

青春有我

这样更不行

慕尼黑8549860

select case A when A的值 then  NUM                   when A的值 then  NUM                   end from 表名    

德玛西亚99

如果有163行,那会不会要写163个 when呢,况且这列也不能确定,即不是提前预知的

开心每一天1111

这是我查询的语句,有点雷人select row_number() over(order by Month_Rating desc) as 'Row_Id',*from (select distinct a.SUP_MANAGE_ID,b.SUP_NAME,(select CAST(SUM(SUP_ASSESS_POINT)/COUNT(0) as numeric(5,2))from ASSESS_SUP_CLOSE_POINT where SUP_MANAGE_ID=a.SUP_MANAGE_ID and ORGANISE_ID='YFJC00' and YEAR_MONTH_STR between '201001' and '201003') as 'Month_Rating'from ASSESS_SUP_CLOSE_POINT a inner join SUP_INFO b on a.SUP_MANAGE_ID=b.SUP_MANAGE_ID where ORGANISE_ID='YFJC00' and YEAR_MONTH_STR between '201001' and '201003') a

HUX布斯

添加一列num排序,根据'Month_Rating' 来填充num,

GCT1015

你的意思是这个num跟列A的值完全一样?
打开App,查看更多内容
随时随地看视频慕课网APP