SQL SELECT
SQL SELECT INTO 

SQL SELECT TOP


在 SQL 中,TOP 关键字用于指定查询返回的行数。它的使用方式根据不同的 SQL 方言有所不同:


SQL Server / MS Access

在 SQL Server 和 MS Access 中,你可以使用 TOP 来指定要返回的行数:

SELECT TOP (n) column1, column2, ...
FROM table_name;


将n替换为你想要检索的行数。例如,要检索前10行:

SELECT TOP 10 column1, column2
FROM table_name;


MySQL

在 MySQL 中,你使用 LIMIT 代替 TOP:

SELECT column1, column2, ...
FROM table_name
LIMIT n;

将 n 替换为你想要检索的行数。例如,在MySQL 中检索前 10 行:

SELECT column1, column2
FROM table_name
LIMIT 10;


Oracle

在 Oracle 中,可以使用 FETCH FIRST 来实现类似的功能:

SELECT column1, column2, ...
FROM table_name
FETCH FIRST n ROWS ONLY;

将 n 替换为你想要检索的行数。例如:

SELECT column1, column2
FROM table_name
FETCH FIRST 10 ROWS ONLY;


DB2

在 IBM 的 DB2 中,同样使用 FETCH FIRST:

SELECT column1, column2, ...
FROM table_name
FETCH FIRST n ROWS ONLY;

将 n 替换为你想要检索的行数。



示例用法:

-- SQL Server / MS Access
SELECT TOP 5 id, name
FROM teachers;

-- MySQL
SELECT id, name
FROM teachers
LIMIT 5;

LIMIT 5;
-- Oracle
SELECT id, name
FROM teachers
FETCH FIRST 5 ROWS ONLY;

-- DB2
SELECT id, name
FROM teachers
FETCH FIRST 5 ROWS ONLY;


总之,在 SQL 中,虽然 TOP 在 SQL Server 和 MS Access 中常用,其他数据库如 MySQL、PostgreSQL、Oracle 和 DB2 使用LIMIT 或 FETCH FIRST 来实现类似的功能。具体的语法和行为可以参考各自 SQL 方言的文档。