MySQL的数据操作3(ORDER BY、多字段排序、随机排序)

排序操作

假设当前数据库记录如下:

CREATE TABLE IF NOT EXISTS mytest(
    id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY COMMENT '用户编号',
    username VARCHAR(20) NOT NULL UNIQUE COMMENT '用户名',
    sex ENUM('男','女','保密') NOT NULL DEFAULT '保密' COMMENT '性别',
    age TINYINT UNSIGNED NOT NULL COMMENT '年龄'
)ENGINE=INNODB CHARSET=UTF8;



INSERT mytest VALUE(NULL,'king',1,18);
INSERT mytest VALUES(NULL,'Jhon','男',19),(NULL,'Mike',1,20),(NULL,'Jack',1,26);

INSERT mytest VALUE(NULL,'hing','女',18);
INSERT mytest(username,age) VALUE('Mary',17);

INSERT mytest SET username='Black',sex='男',age=19;

INSERT mytest VALUE(DEFAULT,'hung','女',18);

SELECT * FROM mytest;

输出为:

id  username sex age
1   king    男   18
2   Jhon    男   19
3   Mike    男   20
4   Jack    男   26
5   hing    女   18
6   Mary    保密  17
7   Black   男   19
8   hung    女   18

如果要按照id降序排序:

SELECT id,username,sex,age FROM mytest ORDER BY id DESC;//DESC表示降序,如果不加DESC则默认表示升序排序,也可以用ASC表示升序

输出:

id  username sex age
8   hung    女   18
7   Black   男   19
6   Mary    保密  17
5   hing    女   18
4   Jack    男   26
3   Mike    男   20
2   Jhon    男   19
1   king    男   18

按照age升序排序

SELECT id,username,sex,age FROM mytest ORDER BY age;

输出:

id  username sex age
6   Mary    保密  17
1   king    男   18
5   hing    女   18
8   hung    女   18
2   Jhon    男   19
7   Black   男   19
3   Mike    男   20
4   Jack    男   26

也可以对多个字段进行排序:

SELECT id,username,sex,age FROM mytest ORDER BY age ASC, username ASC;//在按照age排序完的基础上,再按照username进行排序

输出:

id  username sex age
6   Mary    保密  17
5   hing    女   18
8   hung    女   18
1   king    男   18
7   Black   男   19
2   Jhon    男   19
3   Mike    男   20
4   Jack    男   26

对所有记录进行随机排序

输入:

SELECT id,username,sex,age FROM mytest ORDER BY RAND();

得到的输出每次都是随机的

限制结果集的显示条数

输入:

SELECT id,username,sex,age FROM mytest ORDER BY age LIMIT 3;//显示前三条记录

输出:

id  username sex age
6   Mary    保密  17
1   king    男   18
8   hung    女   18

或者输入

SELECT id,username,sex,age FROM mytest ORDER BY age LIMIT 2,3;//从记录下标2(第三条记录)开始,输出三条记录

输出:

id  username sex age
8   hung    女   18
5   hing    女   18
2   Jhon    男   19
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容