TOP, LIMIT, ROWNUM 子句 (SQL TOP, LIMIT, ROWNUM Clause)

TOP (SQL Server), LIMIT (MySQL), ROWNUM (Oracle) 這些語法其實都是同樣的功能,都是用來限制您的 SQL 查詢語句最多只影響幾筆資料,而不同的語法則只因不同的資料庫實作時採用不同的名稱。

我們來看看以下的例子:

我們怎麼從下面這個「customers」資料表中
C_Id Name City Address Phone
1 張一 台北市 XX路100號 02-12345678
2 王二 新竹縣 YY路200號 03-12345678
3 李三 高雄縣 ZZ路300號 07-12345678
4 陳四 台北市 AA路400號 02-87654321

只取出前兩筆資料呢?
C_Id Name City Address Phone
1 張一 台北市 XX路100號 02-12345678
2 王二 新竹縣 YY路200號 03-12345678

SQL Server - TOP 語法 (SQL TOP Syntax)

SELECT TOP number|percent table_column1, table_column2···
FROM table_name;
您可以這樣下 TOP 查詢語句
SELECT TOP 2 *
FROM customers;
或,您也可以
SELECT TOP 50 PERCENT *
FROM customers;

MySQL 資料庫 - LIMIT 語法 (SQL LIMIT Syntax)

SELECT table_column1, table_column2···
FROM table_name
LIMIT number;
您可以這樣下 LIMIT 查詢語句
SELECT *
FROM customers
LIMIT 2;

Oracle 資料庫 - ROWNUM 語法 (ROWNUM Syntax)

SELECT table_column1, table_column2···
FROM table_name
WHERE ROWNUM <= number;
您可以這樣下 ROWNUM 查詢語句
SELECT *
FROM customers
WHERE ROWNUM <= 2;