怎么用sql对搜索结果排序并添加序号
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么用sql对搜索结果排序并添加序号相关的知识,希望对你有一定的参考价值。
例如在表A中有两个字段,学号,日期。我想要的结果是
学号 日期 序号
001 3-10 1
001 3-11 2
001 3-12 3
002 3-10 1
002 3-11 2
谁能帮忙写一下!解决了给分!
1、首先建一张测试表coal_blead,里面有多个字段。
2、输入“select * from coal_blead order by qnet,price”语句,按qnet,price字段进行升序排序。
3、输入“select * from coal_blead order by qnet desc,price desc”语句,先按qnet字段进行降序,再按price字段进行降序。
4、输入“select * from coal_blead order by qnet desc,price asc”语句,先按qnet字段降序,再按price字段进行升序。
5、如果想对更多的字段进行排序,可以进行添加。
参考技术Aselect 学号 ,日期 row_number() over(partition by 学号 order by 学号) from A表
本回答被提问者和网友采纳 参考技术B SELECT RANK() OVER (ORDER BY a.日期 ASC) AS 序号, a.* FROM a如果提示不支持over,点击忽略就可以了。 参考技术C if exists (select 1 from tempdb..sysobjects where name like \'#t%\') drop table #t
select identity(int,1,1) id,学号,日期 into #t from A
select * from #t order by 学号追问
我想要直接搜索得到,怎么写?
追答identity(int,1,1)语句只能使用在Into字句中,而你要添加一个自动序列号又必须用到这个函数
所以只能插入一个临时表然后再通过读取临时表的方法
建议你在建立数据库的时候就设立一个自动字段
虽然不是我需要用到的,但还是学习到了,谢谢!
问一个sql查询,如何给查询结果加上序号
SQL Server 下
SELECT ROW_NUMBER() OVER(ORDER BY ID) ROWNU,A1 FROM TA1解说:在这里,TA1是一个表,A1是表中的一个字段,表的另一个字段为ID本用于自增这儿用来排序。
SQL Server 中的 ROW_NUMBER() 得到一个查询出的顺序,但这个函数要求给出一个查的排序方案,因为SQL Server的存储是无关顺序的。
在Oracle里,本就有rownum。可直接用:
SELECT rownum,A1 FROM TA1其它的数据库可能有别的方案,不一而论。
参考技术ASQL Server 下
1、SELECT ROW_NUMBER() OVER(ORDER BY ID) ROWNU,A1 FROM TA1
解说:在这里,TA1是一个表,A1是表中的一个字段,表的另一个字段为ID本用于自增这儿用来排序。
SQL Server 中的 ROW_NUMBER() 得到一个查询出的顺序,但这个函数要求给出一个查的排序方案,因为SQL Server的存储是无关顺序的。
在Oracle里,本就有rownum。可直接用:
1、SELECT rownum,A1 FROM TA1
其它的数据库可能有别的方案,不一而论。
参考资料
百度.百度[引用时间2018-1-4]
参考技术B oracle 有rownum 其它数据我不清楚以上是关于怎么用sql对搜索结果排序并添加序号的主要内容,如果未能解决你的问题,请参考以下文章
(Sqlserver)将在查询结果插入新表中的时候添加一个自动增长列么 SQL语句怎么写