社区
疑难问题
帖子详情
order by排序后如何添加一列自动编号?
elliot
2003-07-17 05:33:43
比如学生成绩order by从高到低排序后,怎么添加一列自动编号,记录排名?
就像下面这样:
id score rank
------ ------------ --------
Mark 98 1
Jerry 93 2
Kate 90 3
......
...全文
403
9
打赏
收藏
order by排序后如何添加一列自动编号?
比如学生成绩order by从高到低排序后,怎么添加一列自动编号,记录排名? 就像下面这样: id score rank ------ ------------ -------- Mark 98 1 Jerry 93 2 Kate 90 3 ......
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fxjpost
2003-07-18
打赏
举报
回复
要想實現分數相同名次相同你得寫函數了。
或者用臨時表寫存儲過程用遊標實現,很快的,隻要快你管它用什麼方法實現呢
ronaldor
2003-07-18
打赏
举报
回复
SqlServer2000的话可以用函数
zjcxc
2003-07-17
打赏
举报
回复
如果不考虑资源消耗的问题,一定要视图的话,就用:
select id,score
,(select count(score) from 你的表 where score<=a.score)
from 你的表 a
order by score desc
这个可以解决"分数相同时排名多计1"的问题
zjcxc
2003-07-17
打赏
举报
回复
用自动编号的列也会出现分数相同时排名多计1
的情况啊
zjcxc
2003-07-17
打赏
举报
回复
要做成视图的话,那就得用资源消耗大的方法
elliot
2003-07-17
打赏
举报
回复
谢谢两位!
to tj_dns(愉快的登山者):
这样似乎资源消耗太大,查询时间比较长,而且分数相同时排名多计1
to 97866(weiLuang):
必须into进表,做成视图可能么?
愉快的登山者
2003-07-17
打赏
举报
回复
Select id, score,
(select count(*) from 表名 where score >= A.score) rank from 表名 A Order by Score desc
97866
2003-07-17
打赏
举报
回复
改正:
-----------------------------------------------
Select identity(int,1,1)as OrderID,* Into #tmp01 from 表名 Order by Score
Select * from #tmp01 ---排名表.
97866
2003-07-17
打赏
举报
回复
Select identity(int,1,1)as OrderID,* from 表名 Order by Score
如何在
order
by
排序
之后加上
一列
序号
起因:公司想要做好友之间成长值排名 过程: :由于项目开始觉得都是前端去处理这些问题,现在需要我来处理,因为公司分为了很多个平台.一个人的改动相对于更多人的改动,还是选择了前者. 发现: 第一种: select 序号= Row_Number()over(partition by ID) ,ID, 名字 from t 第二种: select ROW_NUMBER() over(partition b...
使用
order
by
排序
判断返回结果的列数,
order
by
排序
判断字段数原理详解
「作者主页」:士别三日wyx
order
by
排序
猜解列数原理详解一、
order
by的两种使用方式1)按照字段名
排序
2)按照索引
排序
二、
order
by怎么判断字段数?1)正常的
排序
3)错误的
排序
使用「联合注入」(SQL注入漏洞的利用方式之一)进行脱库的时候,需要判断页面显示的「字段」数量,也就是返回的查询结果包含几个字段,最常用的一种判断方式就是利用
order
by
排序
判断字段数。 一、orde.
SQL
ORDER
BY 多列
排序
SQL
ORDER
BY 多列
排序
SQL
ORDER
BY 多列
排序
的使用 SQL
ORDER
BY 多列
排序
的使用 最近学习My Sql的时候对
order
by的多列
排序
逻辑不是很清楚,查阅了一些资料加上自己动手做了几个小实验清楚了不少,本结论仅适用于实验条件下成立(列值为 int)先上结论: 如:
order
by 列名1,列名2,列名3…; 若列名后不加限制条件,将直接按照离
order
by语...
MySQL
order
by关键字详解,
order
by
排序
「作者主页」:士别三日wyx
ORDER
BY 关键字一、
order
by 简介1)
order
by 的作用2)语法格式二、
order
by 使用1)按照字段名
排序
2)按照索引进行
排序
3)降序4)按照多列
排序
一、
order
by 简介
ORDER
BY 关键字用于对结果集进行「
排序
」。 1)
order
by 的作用
ORDER
BY 关键字可以使查询返回的「结果集」按照指定的列进行
排序
,可以按照某「
一列
」
排序
或者同时按照「多列」进行
排序
,
排序
的顺序可以是「升序」或者「降序」。 2)语法格式 SELEC.
order
by使用索引列
排序
时会失效吗?
order
by使用索引列
排序
时会失效吗? 在使用
order
by对某列进行
排序
时, 其sql一定进行了多表联查的操作. 说白了肯定做了表关联. 既然有表关联, 那
order
by
排序
就可以对任意的表进行
排序
. 那么应该对那个表进行
排序
好点呢? 先说结论,
order
by后面跟的索引列只是对 驱动表才起作用, 也就是说如果是对驱动表进行
排序
, 那么
order
by后面的索引是起作用的, 但是如果
order
by后面跟的
排序
字段不是驱动表的, 那么这时索引是不起作用的. 问题来了 , 什么是驱动表?
疑难问题
22,210
社区成员
121,726
社区内容
发帖
与我相关
我的任务
疑难问题
MS-SQL Server 疑难问题
复制链接
扫一扫
分享
社区描述
MS-SQL Server 疑难问题
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章