mysql升序和降序语句目录

mysql ordery by 默认是如何进行排序的呢?

如何让mysql按照两个或多个字段排序

mysql根据某个字段内容排序

升序语句:SELECT * FROM table_name ORDER BY column_name ASC;\n\n降序语句:SELECT * FROM table_name ORDER BY column_name DESC;"

mysql ordery by 默认是如何进行排序的呢?

mysql升序和降序语句,如何让mysql按照两个或多个字段排序  第1张

mysql的orderby可以排序多个。

多个排序语法:

升序:select * from table_name order by 字段1,字段2;

降序:select * from table_name order by 字段1 desc,字段2 desc;

下面通个一个例子介绍:有表student,表记录有,当只做age的排序的时候,年龄从大到小的排列

当做age和id排序的时候,先是年龄排序,而同年龄时段的再按id大小排 。

mysql的order by可以排序多个,只需在order by 后面的字段用逗号隔开即可,多个排序是有效的。

select * from table order by fileds limit 0,1000;

如果fileds相同,就会根据*号中第二列的默认排序,比如数值型的话就是从0、1、2、3这样,字符型可能就是首字母的顺序。

如果结果都一样就按照系统默认的排序排。

如果是 innodb引擎,会根据主键大大小,由小到大;

如果是myisam引擎,就根据数据插入顺序先后来排。

例如你表名 为test,sql 如下:

select * from test order by `order` desc-----------------根据order降序排列,去掉末尾的desc就是升序。

注:order为关键字,所以字段order需要用反引号括起来,

如何让mysql按照两个或多个字段排序

mysql升序和降序语句,如何让mysql按照两个或多个字段排序  第2张

在select语句的order by子句中写出排序所依据的字段即可,每个字段后面可以指定升序(asc)或者降序(desc)

mysql根据某个字段内容排序

mysql升序和降序语句,如何让mysql按照两个或多个字段排序  第3张

select * from (select * from tablename where A='01' order by B asc) a

union all

select * from (select * from tablename where A='02' order by B desc) a