先看一个数据表里的一段数据(实际上,该表中并不止是有 'uid' 和 'username' 这两个字段,且记录也不止这 10 个):
现在希望按照 uid 的升序排列列出前 6 个用户名。这里,数据表里共有 10 个用户,而只希望列出 6 个,那么此时就需要 limit 来限制一下这个数据,因此可以执行如下命令:
[Plain Text] 纯文本查看 复制代码 SELECT `uid` , `username` FROM `pw_members` where `uid` < 11 ORDER BY `uid` desc LIMIT 6
执行结果如下图所示:
注意,上面的查询语句中,如果不添加 where `uid· < 11 进行限定,那么会对实际记录数中的末 6 条数据进行降序排序,如执行:
[Plain Text] 纯文本查看 复制代码 SELECT `uid` , `username` FROM `pw_members` ORDER BY `uid` desc LIMIT 6;
会得到:
这样的结果。
在上面的语句中,使用了 limit num 这样的表达式,它表示显示出检索结果中的前 num 行。
如果想要列出第 3 到第 5 行的结果(按照升序排序),那么可以如下执行语句:
[Plain Text] 纯文本查看 复制代码 SELECT `uid` , `username` FROM `pw_members` LIMIT 2,3;
查询结果如下:
注意,实际记录中,'uid' 为 3 的记录已经丢失。因此这里查询到的是第 4 到第 6 行记录。上面的语句中使用的 LIMIT 2,3 这样的限定表示:显示出从第 3 行记录开始的后 3 条记录。也就是说,这里的 2 是个用来定位的偏移值,而 3 是在此偏移值后要显示的行数。 |