選單
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

SQL 教程

SQL 首頁 SQL 入門 SQL 語法 SQL Select SQL Select Distinct SQL Where SQL Order By SQL And SQL Or SQL Not SQL Insert Into SQL Null Values SQL Update SQL Delete SQL Select Top SQL Aggregate Functions SQL Min and Max SQL Count SQL Sum SQL Avg SQL Like SQL Wildcards SQL In SQL Between SQL Aliases SQL Joins SQL Inner Join SQL Left Join SQL Right Join SQL Full Join SQL Self Join SQL Union SQL Group By SQL Having SQL Exists SQL Any, All SQL Select Into SQL Insert Into Select SQL Case SQL Null Functions SQL Stored Procedures SQL Comments SQL Operators

SQL 資料庫

SQL Create DB SQL Drop DB SQL Backup DB SQL Create Table SQL Drop Table SQL Alter Table SQL Constraints SQL Not Null SQL Unique SQL Primary Key SQL Foreign Key SQL Check SQL Default SQL Index SQL Auto Increment SQL Dates SQL Views SQL Injection SQL Hosting SQL Data Types

SQL 參考

SQL 關鍵字 MySQL 函式 SQL Server 函式 MS Access 函式 SQL 快速參考

SQL 示例

SQL 示例 SQL 編輯器 SQL 測驗 SQL 練習 SQL Server SQL Bootcamp SQL 證書

SQL TOP, LIMIT, FETCH FIRST 或 ROWNUM 子句


SQL SELECT TOP 子句

SQL SELECT TOP 子句用於指定要返回的記錄數。

當表包含大量記錄(例如成千上萬條)時,SELECT TOP 子句非常有用。返回大量記錄可能會影響效能。

示例

僅選擇 Customers 表的前 3 條記錄

SELECT TOP 3 * FROM Customers;
自己動手試一試 »

注意: 並非所有資料庫系統都支援 SELECT TOP 子句。MySQL 支援 LIMIT 子句來選擇有限數量的記錄,而 Oracle 使用 FETCH FIRST n ROWS ONLYROWNUM

SQL Server / MS Access 語法

SELECT TOP number|percent column_name(s)
FROM table_name
WHERE condition;

MySQL 語法

SELECT column_name(s)
FROM table_name
WHERE condition
LIMIT number;

Oracle 12 語法

SELECT column_name(s)
FROM table_name
ORDER BY column_name(s)
FETCH FIRST number ROWS ONLY;

舊版 Oracle 語法

SELECT column_name(s)
FROM table_name
WHERE ROWNUM <= number;

舊版 Oracle 語法 (帶 ORDER BY)

SELECT *
FROM (SELECT column_name(s) FROM table_name ORDER BY column_name(s))
WHERE ROWNUM <= number;


演示資料庫

以下是示例中使用的 Customers 表的選擇

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4

Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden


LIMIT

以下 SQL 語句顯示了 MySQL 的等效示例

示例

選擇 Customers 表的前 3 條記錄

SELECT * FROM Customers
LIMIT 3;
自己動手試一試 »

FETCH FIRST

以下 SQL 語句顯示了 Oracle 的等效示例

示例

選擇 Customers 表的前 3 條記錄

SELECT * FROM Customers
FETCH FIRST 3 ROWS ONLY;

SQL TOP PERCENT 示例

以下 SQL 語句從 "Customers" 表中選擇 50% 的記錄 (適用於 SQL Server/MS Access)

示例

SELECT TOP 50 PERCENT * FROM Customers;
自己動手試一試 »

以下 SQL 語句顯示了 Oracle 的等效示例

示例

SELECT * FROM Customers
FETCH FIRST 50 PERCENT ROWS ONLY;

新增 WHERE 子句

以下 SQL 語句從 "Customers" 表中選擇前三條記錄,其中國家為 "Germany" (適用於 SQL Server/MS Access)

示例

SELECT TOP 3 * FROM Customers
WHERE Country='Germany';
自己動手試一試 »

以下 SQL 語句顯示了 MySQL 的等效示例

示例

SELECT * FROM Customers
WHERE Country='Germany'
LIMIT 3;
自己動手試一試 »

以下 SQL 語句顯示了 Oracle 的等效示例

示例

SELECT * FROM Customers
WHERE Country='Germany'
FETCH FIRST 3 ROWS ONLY;

新增 ORDER BY 關鍵字

當您想對結果進行排序,並返回排序後結果的前 3 條記錄時,新增 ORDER BY 關鍵字。

對於 SQL Server 和 MS Access

示例

按 CustomerName 降序對結果進行排序,並返回前 3 條記錄

SELECT TOP 3 * FROM Customers
ORDER BY CustomerName DESC;
自己動手試一試 »

以下 SQL 語句顯示了 MySQL 的等效示例

示例

SELECT * FROM Customers
ORDER BY CustomerName DESC
LIMIT 3;
自己動手試一試 »

以下 SQL 語句顯示了 Oracle 的等效示例

示例

SELECT * FROM Customers
ORDER BY CustomerName DESC
FETCH FIRST 3 ROWS ONLY;

×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援