页次: 1
排序使用 order by
创建一个表插入数据
create table tb_003 ( id int unsigned not null auto_increment primary key, name varchar(20), age tinyint , weight tinyint ); insert into tb_003 (name, age, weight) values ('name1', '2', '100'), ('name2', '2', '90'), ('name3', '1', '80'), ('name4', '3', '95') ;
按照age排序 ,
mysql> select * from tb_003 order by age; +----+-------+------+--------+ | id | name | age | weight | +----+-------+------+--------+ | 3 | name3 | 1 | 80 | | 1 | name1 | 2 | 100 | | 2 | name2 | 2 | 90 | | 4 | name4 | 3 | 95 | +----+-------+------+--------+ 4 rows in set (0.01 sec) mysql> select * from tb_003 order by age desc; +----+-------+------+--------+ | id | name | age | weight | +----+-------+------+--------+ | 4 | name4 | 3 | 95 | | 1 | name1 | 2 | 100 | | 2 | name2 | 2 | 90 | | 3 | name3 | 1 | 80 | +----+-------+------+--------+ 4 rows in set (0.00 sec)
可以看出添加一个 desc 就是使用逆序排列。
这里如何先按照age排, 之后按照 weight排列。 age是逆序(大的在前), weight 正序 (小的在前)
mysql> select * from tb_003 order by age desc , weight asc ; +----+-------+------+--------+ | id | name | age | weight | +----+-------+------+--------+ | 4 | name4 | 3 | 95 | | 2 | name2 | 2 | 90 | | 1 | name1 | 2 | 100 | | 3 | name3 | 1 | 80 | +----+-------+------+--------+
这里同时用两个字段进行了排序。
一个age, 一个weight 。
写法
order by age desc , weight asc ;
默认就是asc
ipbbs.net
离线
页次: 1