本文介绍MySQL数据库中执行select查询语句,并对查询的结果使用order
by
子句进行排序。
再来回顾一下SQL语句中的select语句的语法:
Select
语句的基本语法:
Select
<列的集合>
from
<表名>
where
<条件>
order
by
<排序字段和方式>
如果要对查询结果按某个字段排序,则要使用order
by
子句,如下:
select
from
<表名>
order
by
<字段名称>
<排序方式>
下面来看两个例子,第一个查询test表中所有数据,并按t_id正序排列;第二个查询与第一个相反,是逆序排列。
mysql>
select
t_id,t_name
from
test
order
by
t_id;
+------+--------+
|
t_id
|
t_name
|
+------+--------+
|
1
|
name1
|
|
2
|
name2
|
+------+--------+
2
rows
in
set
(000
sec)
mysql>
select
t_id,t_name
from
test
order
by
t_id
desc;
+------+--------+
|
t_id
|
t_name
|
+------+--------+
|
2
|
name2
|
|
1
|
name1
|
+------+--------+
2
rows
in
set
(000
sec)
注意:正序排序时,可以使用asc作为排序方式的关键词,也可以不使用。逆序时,一定要使用desc作为关键词。
关于MySQL中select语句使用order按行排序,本文就介绍这么多,希望对大家有所帮助,谢谢!
in的效率太低,不能利用索引,建议使用:
select top 每页数量 from 表 where id >(select top 1 max(id) from (select top (页数-1)每页数量 from 表 order by id,name)) 或
select top 每页数量 from 表 where id <(此处根据顺序和逆序)
import javautilScanner;
public class Test {
public static void main(String[] args) {
//定义数组
int[] nums = new int[10];
Scanner input = new Scanner(Systemin);
for (int i = 0; i < numslength; i++) {
Systemoutprint("请输入第"+(i+1)+"个数:");
nums[i] = inputnextInt();
}
//遍历输出数组元素
for (int i = numslength-1; i >= 0; i--) {
Systemoutprintln(nums[i]);
}
}
}
以Id排序,降序写,就象楼上的一样``
嘿嘿 top 对ms的有用``对mysql 对应top的是limit
你理解错了吧``我说的mysql中能实现top功能的是limit x,x
CREATE TABLE #temp (
ID INT
)
GO
INSERT INTO #temp VALUES(5);
INSERT INTO #temp VALUES(1);
INSERT INTO #temp VALUES(7);
INSERT INTO #temp VALUES(8);
GO
SELECT FROM #temp;
go
ID
-----------
5
1
7
8
(4 行受影响)
SELECT
ID
FROM
(
SELECT
ROW_NUMBER() OVER( ORDER BY (SELECT 1) ) NO, ID
FROM
#temp
) subQuery
ORDER BY
NO DESC;
GO
ID
-----------
8
7
1
5
(4 行受影响)
将字段依次写在order by 后面即可 , 中间用逗号隔开。
view plaincopy to clipboardprintselect from 表 order by time , name
select from 表 order by time asc , name asc
select from 表 order by time desc , name desc
select from 表 order by time asc , name desc
select from 表 order by time desc , name asc
(注: asc 表示升序 , desc表示降序 , 未明确写明排序方式时默认是升序)
与之类似的语法是 group by , 按多个字段分组时 , 也是依次将多个字段写在group by 的后面 , 并用逗号隔开 , 范例如下:
view plaincopy to clipboardprintselect time , name , sum() from 表 group by time , name
以上就是关于MySQL中select语句使用order按行排序全部的内容,包括:MySQL中select语句使用order按行排序、Access数据库分页查询,效率sql语句、编一个程序,定义数组,用for循环语句,顺序输入10个实数,然后逆序输出这10个数。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)