# 控制查询返回的记录数

__*LIMIT 子句*__

```8
tidb> SELECT name FROM universe.planets ~!@LIMIT@!~ 8;
+---------+
| name    |
+---------+
| Earth   |
| Jupiter |
| Mars    |
| Mercury |
| Neptune |
| Pluto   |
| Saturn  |
| Uranus  |
+---------+

tidb> SELECT name FROM universe.planets ~!@ORDER BY@!~ distance_from_sun
   -> ~!@LIMIT@!~ 8;
+---------+
| name    |
+---------+
| Mercury |
| Venus   |
| Earth   |
| Mars    |
| Jupiter |
| Saturn  |
| Uranus  |
| Neptune |
+---------+
```
-------------------------------------------------------------
检查上面的结果,试着找出差异。
- ORDER BY
  - OrderBy 子句用于指定结果排序顺序,可以按照列、表达式或者是 select_expr 列表中某个位置的字段进行排序。
- LIMIT
  - Limit 子句用于限制结果条数。Limit 接受一个或两个数字参数,如果只有一个参数,那么表示返回数据的最大行数；如果是两个参数,那么第一个参数表示返回数据的第一行的偏移量（第一行数据的偏移量是 0）,第二个参数指定返回数据的最大条目数。另支持 FETCH FIRST/NEXT n ROW/ROWS ONLY 语法,与LIMIT n 效果相同,其中 n 可省略,省略时与 LIMIT 1 效果相同。

```
tidb> SELECT name FROM universe.planets LIMIT 8;
+---------+
| name    |
+---------+
| Earth   |
| Jupiter |
| Mars    |
| Mercury |
| Neptune |
| Pluto   |
| Saturn  |
| Uranus  |
+---------+
8 rows in set (0.00 sec)

tidb> SELECT name FROM universe.planets
   -> ORDER BY distance_from_sun
   -> LIMIT 8;
+---------+
| name    |
+---------+
| Mercury |
| Venus   |
| Earth   |
| Mars    |
| Jupiter |
| Saturn  |
| Uranus  |
| Neptune |
+---------+
8 rows in set (0.00 sec)
```


