SQL 教程
1. SQL 教程 2. SQL 简介 3. SQL 语法 4. SQL SELECT 语句 5. SQL SELECT DISTINCT 语句 6. SQL WHERE 子句 7. SQL AND & OR 运算符 8. SQL ORDER BY 关键字 9. SQL INSERT INTO 语句 10. SQL UPDATE 语句 11. SQL DELETE 语句 12. SQL SELECT TOP, LIMIT, ROWNUM 13. SQL LIKE 操作符 14. SQL 通配符 15. SQL IN 操作符 16. SQL BETWEEN 操作符 17. SQL 别名 18. SQL 连接(JOIN) 19. SQL INNER JOIN 关键字 20. SQL LEFT JOIN 关键字 21. SQL RIGHT JOIN 关键字 22. SQL FULL OUTER JOIN 关键字 23. SQL UNION 操作符 24. SQL SELECT INTO 语句 25. SQL INSERT INTO SELECT 语句 26. SQL CREATE DATABASE 语句 27. SQL CREATE TABLE 语句 28. SQL 约束 29. SQL NOT NULL 约束 30. SQL UNIQUE 约束 31. SQL PRIMARY KEY 约束 32. SQL FOREIGN KEY 约束 33. SQL CHECK 约束 34. SQL DEFAULT 约束 35. SQL CREATE INDEX 语句 36. SQL 撤销索引、表以及数据库 37. SQL ALTER TABLE 语句 38. SQL AUTO INCREMENT 字段 39. SQL CREATE VIEW、REPLACE VIEW、 DROP VIEW 语句 40. SQL Server 和 MySQL 中的 Date 函数 41. SQL NULL 值 – IS NULL 和 IS NOT NULL 42. SQL ISNULL()、NVL()、IFNULL() 和 COALESCE() 函数 43. SQL 通用数据类型 44. SQL MS Access、MySQL 和 SQL Server 数据类型 45. SQL 函数 46. SQL AVG() 函数 47. SQL COUNT() 函数 48. SQL FIRST() 函数 49. SQL LAST() 函数 50. SQL MAX() 函数 51. SQL MIN() 函数 52. SQL SUM() 函数 53. SQL GROUP BY 语句 54. SQL HAVING 子句 55. SQL UCASE() 函数 56. SQL LCASE() 函数 57. SQL MID() 函数 58. SQL LEN() 函数 59. SQL ROUND() 函数 60. SQL NOW() 函数 61. SQL FORMAT() 函数 62. SQL 快速参考 63. SQL 主机 64. SQL 总结

SQL SELECT TOP, LIMIT, ROWNUM

SQL SELECT TOP, LIMIT, ROWNUM 子句


SQL SELECT TOP 子句

SELECT TOP 子句用于规定要返回的记录的数目。

SELECT TOP 子句对于拥有数千条记录的大型表来说,是非常有用的。

注意:并非所有的数据库系统都支持 SELECT TOP 语句。 MySQL 支持 LIMIT 语句来选取指定的条数数据, Oracle 可以使用 ROWNUM 来选取。

SQL Server / MS Access 语法

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

MySQL 语法

SELECT column_name(s)
FROM table_name
LIMIT number;

实例

SELECT *
FROM Persons
LIMIT 5;

Oracle 语法

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

实例

SELECT *
FROM Persons
WHERE ROWNUM <=5;


演示数据库

在本教程中,我们将使用 样本数据库。

下面是选自 "Websites" 表的数据:


mysql> SELECT * FROM Websites;

+----+---------------+---------------------------+-------+---------+

| id | name          | url                       | alexa | country |

+----+---------------+---------------------------+-------+---------+

|  1 | Google        | https://www.google.cm/    |     1 | USA     |

|  2 | 淘宝          | https://www.taobao.com/   |    13 | CN      |

|  3 |        | http://www.55mianshi.com/    |  5000 | USA     |

|  4 | 微博           | http://weibo.com/         |    20 | CN      |

|  5 | Facebook      | https://www.facebook.com/ |     3 | USA     |

|  7 | stackoverflow | http://stackoverflow.com/ |     0 | IND     |

+----+---------------+---------------------------+-------+---------+



MySQL SELECT LIMIT 实例

下面的 SQL 语句从 "Websites" 表中选取头两条记录:

实例

SELECT * FROM Websites LIMIT 2;

执行以上 SQL,数据如下所示:



SQL SELECT TOP PERCENT 实例

在 Microsoft SQL Server 中还可以使用百分比作为参数。

下面的 SQL 语句从 websites 表中选取前面百分之 50 的记录:

实例

以下操作在 Microsoft SQL Server 数据库中可执行。

SELECT TOP 50 PERCENT * FROM Websites;