sql对查询结果排序
A. sql查询结果怎么按指定列数依次排列
with tmp as
(
select row_number() over(order by FENTRYID) rn,FENTRYID
from 表
)
select t1.FENTRYID as FENTRYID1,t2.FENTRYID as FENTRYID2,t3.FENTRYID as FENTRYID3
from tmp t1
left join tmp t2 on t2.rn=t1.rn+1
left join tmp t3 on t3.rn=t1.rn+2
where t1.rn%3=1
order by t1.FENTRYID
这是转成3列的,如果列数要变化,上面的语句要调整
B. 关于SQL SERVER查询之后排序问题!
用order
by,给你个例子
你看看
就明白了:
SELECT
au_lname
FROM
authors
ORDER
BY
au_lname
当这个SELECT语句执行时,作者名字的显示将按字母顺序排列。ORDER
BY子句将作者名字按升序排列。
你也可以同时对多个列使用ORDER
BY子句。例如,如果你想同时按升序显示字段au_lname和字段au_fname,你需要对两个字段都进行排序:
SELECT
au_lname,au_fname
FROM
authors
ORDER
BY
au_lname
,au_fname
这个查询首先把结果按au_lname字段进行排序,然后按字段au_fname排序。记录将按如下的顺序取出:
au_lname
au_fname
…………………………………………………………………….
Bennet
Abraham
Ringer
Albert
Ringer
Anne
Smith
Meander
…
(23
row(s)
affected)
注意有两个作者有相同的名字Ringer。名为Albert
Ringer的作者出现名为Anne
Ringer的作者之前,这是因为姓Albert按字母顺序应排在姓Anne之前。
如果你想把查询结果按相反的顺序排列,你可以使用关键字DESC。关键字DESC把查询结果按降序排列,如下例所示:
SELECT
au_lname,au_fname
FROM
authors
WHERE
au_lname=”Ringer”
ORDER
BY
au_lname
,au_fname
DESC
这个查询从表authors中取出所有名字为Ringer的作者记录。ORDER
BY子句根据作者的名字和姓,将查询结果按降序排列。结果是这样的:
au_lname
au_fname
……………………………………………………………………………………….
Ringer
Anne
Ringer
Albert
(2
row(s)
affectec)
注意在这个表中,姓Anne出现在姓Albert之前。作者名字按降序显示。
你也可以按数值型字段对一个查询结果进行排序。例如,如果你想按降序取出所有书的价格,你可以使用如下的SQL查询:
SELECT
price
FROM
titles
ORDER
BY
price
DESC
这个SELECT语句从表中取出所有书的价格,显示结果时,价格低的书先显示,价格高的书后显示。
C. 如何对sql检索出的数据进行多列排序
SQL多列排序可以在ORDER BY 子句里列出多个列进行排序,列与列之间用逗号隔离,标注关键字ASC为升序排序、DESC为降序排序,省略升/降排序关键字则默认为升序排序。排序字段列表中越靠前的字段其排序优先级别越高。请注意对SQL语句除了对列实施排序外,还可以对基于列的计算表达式实施排序。
请参考下列SQL多列排序语句:
select * from t1 order by col1,col5 desc,col3;
此例以col1第一优先升序排序,col5第二优先降序排序,col3第三优先升序排序。
D. sql 升序降序排列
降序:SELECT * FROM kc ORDERBYcpbh DESC
升序:SELECT * FROM kc ORDERBYcpbhASC
语法:
sql可以根据字段进行排序,其中,DESC表示降序,ASC表示升序
order by 字段名 DESC;按照字段名降序排序
order by 字段名 ASC;按照字段名升序排序
实例:
一、/*查询学生表中姓名、学号,并以学号降序排序*/
select name,StuID from Students_information order by StuID desc /**order by 以什么排序,默认为升序,desc是降序*/
二、/*查询学生表中前5名学生的姓名,学号,并以学号升序排列*/
select top 5 name,StuID from Students_information order by StuID /*order by 默认为升序*/
(4)sql对查询结果排序扩展阅读:
一、ORDER BY 语句
ORDER BY 语句用于根据指定的列对结果集进行排序。
ORDER BY 语句默认按照升序对记录进行排序。
如果您希望按照降序对记录进行排序,可以使用 DESC 关键字。
二、SQL 排序多个字段
order by 多个字段,每个字段后面都有排序方式,默认ASC
例如:select table a order by a.time1 ,a.time2 desc,a.time3 asc
E. sql查询结果进行多字段的排序
sql 使用order by 排序
select * from table order by value1,value2 根据字段value1和value2排序,默认是升序 select * from table order by value1,value2 desc 按照降序排序
F. 在sql 语言中,对输出结果排序的是( ) A.order by B.where C.group by D.having
在sql语言中,对输出结果排序的是order by。
SQL语言中,ORDER BY 语句用于对结果集进行排序。ASC:升序(默认),DESC:降序。ORDER BY 语句默认按照升序对记录进行排序。如果希望按照降序对记录进行排序,可以使用 DESC 关键字。ORDER BY 子句为Previous PageNext Page。
(6)sql对查询结果排序扩展阅读:
ORDER BY 多列的时候,先按照第一个column name排序,再按照第二个column name排序。使用desc或者asc排序符时,只对它紧跟着的第一个列名有效,其他不受影响,仍然是默认的升序。
在Order by 时认为null是最大值,如果Order by 中指定了表达式Nulls first则表示null值的记录将排在最前(不管是asc 还是 desc),如果Order by 中指定了表达式Nulls last则表示null值的记录将排在最后 (不管是asc 还是 desc)。