MySQL 的 LIMIT 是在 ORDER BY 之前還是之後應用的?


MySQL LIMIT 在 ORDER BY 之後應用。讓我們檢查一下 limit 條件。首先,我們建立一個表 -

mysql> create table LimitAfterOrderBy
   −> (
   −> Id int,
   −> Name varchar(100)
   −> );
Query OK, 0 rows affected (0.50 sec)

使用 insert 命令向表中插入一些記錄。查詢如下 -

mysql> insert into LimitAfterOrderBy values(101,'John');
Query OK, 1 row affected (0.18 sec)

mysql> insert into LimitAfterOrderBy values(102,'Carol');
Query OK, 1 row affected (0.15 sec)

mysql> insert into LimitAfterOrderBy values(103,'Bob');
Query OK, 1 row affected (0.21 sec)

mysql> insert into LimitAfterOrderBy values(104,'Sam');
Query OK, 1 row affected (0.15 sec)

使用 select 語句顯示錶中的所有記錄。查詢如下 -

mysql> select *from LimitAfterOrderBy;

以下是輸出 -

+------+-------+
| Id   | Name  |
+------+-------+
| 101  | John  |
| 102  | Carol |
| 103  | Bob   |
| 104  | Sam   |
+------+-------+
4 rows in set (0.00 sec)

以下是 LIMIT 位於 ORDER BY 之後的查詢 -

mysql> select *from LimitAfterOrderBy order by Name limit 4;

以下是輸出 -

+------+-------+
| Id   | Name  |
+------+-------+
|  103 | Bob   |
|  102 | Carol |
|  101 | John  |
|  104 | Sam   |
+------+-------+
4 rows in set (0.00 sec)

更新於:2019-07-30

102 次瀏覽

開啟您的職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.