如果不需要列出所有select查询结果,例如只想查看最新的一条记录或者前几条记录,这时候可以用limit仅列出我们想要的几条数据,具体语法如下:
SELECT column
FROM table
[where conditions]
[ORDER BY column [ASC|DESC]] //order by是用来排序的,column就是具体按哪列排序(注1)
LIMIT number_rows[OFFSET offset_value]; //number_rows就是需要显示的行数了,如果是值是3就显示3条数据(注2)
注1:AS C和DESC是用来区分升序还是降序排列,ASC就是ascending升,DESC是descending降,降序排列常用来显示最新的几条数据
注2: offset _value就是需要略过几条数据,比如按照排序我有1,2,3三条数据,然后offset_value值为2,那么我就略过1和2,从3按照limit限制的行数进行显示
具体例子如下:
SELECT * FROM students ORDER BY id DESC LIMIT 2 OFFSET 2;
假设我有数据如下:
那么运行后的结果就是:
我们发现,显示的结果是倒序显示的,从下往上id=5和id=4的记录已经被跳过了,从id=3开始显示了2条记录