MySQL的order by

当我们需要对从数据库里查询出来的数据进行排序时,就得用到order by语句;

order by语句相比与其它语句执行时间比较靠后,所以一般写在sql语句的最后;

1、基础使用

1)按某字段升序: order by 字段名  asc ;  其中asc可以省略

2)按某字段降序: order by 字段名  desc;

2、多条件排序

order by支持多个排序条件,默认执行顺序为从左到右,各个条件之间用逗号隔开:

order by 字段1 ,字段2 desc;

3.根据某字段的值进行排序

例如:根据完成状态排序,未完成在前,已完成在后

order by field(status,'未完成','已完成')

4.根据字段拼音排序

例如:按姓名NAME首字母拼音排序:

order by CONVERT( NAME USING gbk ) asc

5.LIMIT 和OFFSET来限制结果条数

LIMIT 和 OFFSET 子句通常和ORDER BY 语句一起使用,当我们对整个结果集排序之后,我们可以 LIMIT来指定只返回多少行结果 ,用 OFFSET来指定从哪一行开始返回。你可以想象一下从一条长绳子剪下一小段的过程,我们通过 OFFSET 指定从哪里开始剪,用 LIMIT 指定剪下多少长度。

SELECT column, another_column, …
FROM mytable
WHERE condition(s)
ORDER BY column ASC/DESC
LIMIT num_limit OFFSET num_offset;

你可能感兴趣的:(数据库学习之路,sql,数据库)