当前位置: 首页 > news >正文

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
WHERE condition;

MySQL 和 Oracle 中的 SQL SELECT TOP 是等价的


MySQL语法:

SELECT column_name(s)
FROM table_name
WHERE condition
LIMIT number;
实例
SELECT *
FROM Persons
LIMIT 5;

Oracle 语法

SELECT column_name(s)
FROM table_name
WHERE ROWNUM <= number;
实例
SELECT *
FROM Persons
WHERE ROWNUM <=5;

演示数据库


 在本教程中,我们将使用著名的Northwind示例数据库。

 以下是"Customers" 表中的数据:

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.05021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.05023Mexico
Around the HornThomas Hardy120 Hanover Sq.LondonWA1 1DPUK
5Berglunds snabbköpChristina BerglundBerguvsvägen 8LuleåS-958 22Sweden

SQL SELECT TOP 实例


 以下SQL语句从"Customers" 表中选择前两条记录:

实例

SELECT TOP 2 * FROM Customers;

SQL SELECT TOP PERCENT 实例


 以下SQL语句从 "Customers" 表中选择前50%的记录:

实例

SELECT TOP 50 PERCENT * FROM Customers;

SQL TOP,LIMIT和ROWNUM示例


 以下SQL语句从"Customers"表中选择前三个记录: 

SELECT TOP 3 * FROM Customers;

 以下SQL语句显示了使用LIMIT子句的等效示例: 

SELECT * FROM Customers
LIMIT 3;

 以下SQL语句显示了使用ROWNUM的等效示例: 

SELECT * FROM Customers
WHERE ROWNUM <= 3;

SQL TOP PERCENT示例


 以下SQL语句从"Customers"表中选择记录的前50%: 

SELECT TOP 50 PERCENT * FROM Customers;

添加一个条件


 以下SQL语句从"Customers"表中选择国家为"Germany"的前三条记录: 

SELECT TOP 3 * FROM Customers
WHERE Country='Germany';

 以下SQL语句显示了使用LIMIT子句的等效示例: 

SELECT * FROM Customers
WHERE Country='Germany'
LIMIT 3;

 以下SQL语句显示了使用ROWNUM的等效示例: 

SELECT * FROM Customers
WHERE Country='Germany' AND ROWNUM <= 3;

为什么要LIMIT你的查询结果


 LIMIT作为一种简单的分页方法,主要是为了减少数据返回的时间,如果您查询一个非常大的表(例如一个有数十万或数百万行的表)而不使用限制,那么您可能会等待很长时间才能显示所有的结果,所以使用LIMIT可以减少查询数据返回的时间,提高效率。

http://www.lryc.cn/news/210256.html

相关文章:

  • vue3-admin-element框架登录如何修改?
  • 基于mysql的请假系统,java/springboot/jsp/javaweb/tomcat
  • 【Python机器学习】零基础掌握partial_dependence检验、检查
  • 前端Vue页面中如何展示本地图片
  • 基于PHP的图像分享社交平台
  • 【算法|动态规划No.31 | 01背包问题】01背包模板题
  • Azure - 机器学习:使用 Apache Spark 进行交互式数据整理
  • 4.5 final修饰符
  • Clickhouse数据库部署、Python3压测实践
  • 探索控制领域:从电视遥控器到自动驾驶【基础概念理解、应用实例】
  • 在R中安装CmdStanR的步骤-R4.3.1-CmdStanR-0.6.1.900
  • 安信可小安派AiPi 代码下载
  • 程序化交易(二)level2行情数据源接入
  • 4.6 static修饰符
  • C++头文件定义变量
  • [蓝桥杯-610]分数
  • Vue指令大全:深入探索Vue提供的强大指令功能
  • x210项目重新回顾之十七升级到linux4.19.114 +buildroot2018再讨论
  • shell_56.Linux永久重定向
  • CN考研真题知识点二轮归纳(1)
  • hadoop使用简介
  • WebSocketClient objects are not reuseable
  • 分享54个ASP.NET源码总有一个是你想要的
  • 闭包通俗解释,Demo(Go Java Python)
  • Linux部署Redis Cluster高可用集群(附带集群节点添加删除以及槽位分配操作详解)
  • 【PWN · heap | Off-By-One】Asis CTF 2016 b00ks
  • C++STL---Vector、List所要掌握的基本知识
  • 使用FastAPI部署Ultralytics YOLOv5模型
  • A. Doremy‘s Paint 3
  • 深度学习_1 介绍;安装环境