1. Oracle数据库

SELECT * FROM TABLENAME WHERE ROWNUM <= N

2. Infomix数据库

SELECT FIRST N * FROM TABLENAME

3. DB2数据库

SELECT *
FROM (SELECT * ROW_NUMBER() OVER({ORDER BY COL1 DESC}) AS ROWNUM FROM TABLENAME)
WHERE ROWNUM <= N
或者
SELECT COLUMN FROM TABLENAME FETCH FIRST N ROWS ONLY

4. SQL Server数据库

SELECT TOP N * FROM TABLENAME

5. Sybase数据库

SET ROWCOUNT N
GO
SELECT * FROM TABLENAME

6. MySQL数据库

SELECT * FROM TABLENAME LIMIT N

7. FoxPro数据库

SELECT * TOP N FROM TABLENAME ORDER BY COLUMN

以下示例从表 [tableName] 中读取符合查询条件的前10条记录的SQL语句

1.Access

select top (10) * from [tableName] where [query condition]

1.1 带order by的查询限制
Access中对select top的语句支持有限,如果要在查询top语句的后面使用order by,则order by排序字段必须是无重复值,如果有重复值的话,那么这个TOP很可能会失效,会返回所有记录。
解决办法:在order by 最后面加入主键id,如:
select top 10 from [tableName] order by 排序字段1,id

1.2 带子查询的示例
假如id是表[tableName]的主键,以下语句期望返回三条记录,但结果返回4条记录
select top 3 * from [tableName] where id in(是个子查询,结果比如为1,2,3,4)
解决办法
select top 3 * from [tableName] where id in(是个子查询,结果比如为1,2,3,4) order by id

2 DB2

select column from [tableName] where [query condition] fetch first 10 rows only
3 MySQL

select * from [tableName] where [query condition] limit 10
4 SQL Server

4.1 读取前10条
select top (10) * from [tableName] where [query condition]

4.2 读取后10条
select top (10) * from [tableName] order by id desc

4.3 按照某个排序,第5到10这几个记录
select top 6 * from [tableName] where id not in(select top 4 id from [tableName])

5 Oracle

select * from [tableName] where rownum<=10


我的微信公众号:架构真经(id:gentoo666),分享Java干货,高并发编程,热门技术教程,微服务及分布式技术,架构设计,区块链技术,人工智能,大数据,Java面试题,以及前沿热门资讯等。每日更新哦!

数据库读取前几条记录的SQL语句大全相关推荐

  1. 根据当前记录获取前一条与下一条记录常用 sql语句

    为什么80%的码农都做不了架构师?>>>    1.oracle实现主要是用分析函数 lag与lead SELECT * FROM (SELECT         id,       ...

  2. mysql查询第10到第20条记录_“取出数据表中第10条到第20条记录”的sql语句+selecttop用法...

    1.首先,select top用法: 参考问题 select top n * from和select * from的区别 select * from table -- 取所有数据,返回无序集合 sel ...

  3. mysql 取出20条数据_“取出数据表中第10条到第20条记录”的sql语句+select top 使用方法...

    1.首先.select top使用方法: select * from table --  取全部数据.返回无序集合 select top n * from table -- 依据表内数据存储顺序取前n ...

  4. mysql批量删除多条记录的sql语句_mysql批量删除sql语句

    30种mysql优化sql语句查询的方法_计算机软件及应用_IT/计算机_专业资... 简要介绍基础语句: 1.说明:创建数据库 CREATE DATABASE database-name 2.说明: ...

  5. php sql跳过前四条数据,mysql实现每组取前N条记录的sql,以及后续的组数据量限制...

    select a.msg_id, a.com_id, a.data, a.ctime from sns_user_03.user_request_86 a where 5 (select count( ...

  6. mysql实现每组取前N条记录的sql,以及后续的组数据量限制

    应用场景大概是这样的:比如有很多消息流,这些消息来自不通的app,聚合在一个页面上,查看的时候不能让一个app的消息霸屏,所以就会类似于折叠功能,同一个app的消息只显示最多5条,再多的话,就要点进去 ...

  7. mysql批量删除多条记录的sql语句_一次删除多条记录的sql语句

    在sql中要一次性删除多条记录我想到二种方法,一种是利用sql in一种是利用循环一条条删除,下面我们主要讲关于sql in 在sql中要一次性删除多条记录我想到二种方法,一种是利用sql in一种是 ...

  8. 各个数据库的取一表前N条记录不同SQL写法

    部分数据库可用用不着,且记下 1. ORACLE  SELECT * FROM TABLE1 WHERE ROWNUM<=N 2. INFORMIX c tP'\79]   SELECT FIR ...

  9. 从数据库表中随机获取N条记录的SQL语句

    Oracle:        select * from (select * from tableName order by dbms_random.value) where rownum < ...

最新文章

  1. 10个常用方法有效优化ASP.NET的性能
  2. springmvc学习(小知识点整理)
  3. 关联本地git仓库与Github仓库
  4. C语言丨栈(二):链栈
  5. 问题三十七:C++怎么解一元四次方程?(1)——怎么解一元二次方程
  6. STM32网络通信之DM9000了解
  7. 聊聊Dotnetty
  8. 计算机关机后,电脑关机后自动重启怎么解决?
  9. 常用的数学基础知识集锦
  10. 当一个女生说她要减肥的时候
  11. icloud有linux客户端吗,icloud drive:Windows 版 iCloud 客户端在哪下载
  12. 51单片机c语言学习感想,51单片机实训心得体会
  13. SkipList跳表详解
  14. 【华唯鑫能油】醇烃复合燃料--汽油替代品简介
  15. Java中线程池拒绝策略——代码讲解
  16. HTC G11图案解锁
  17. numpy实现图像融合
  18. pydicom读取头文件_.dcm格式文件软件读取及python处理详解
  19. Laravel5.4注册登录解析及使用教程
  20. nbtscan扫描指定网段的主机

热门文章

  1. 高效开发 Android App 的 10 个建议
  2. LeetCode 187. 重复的DNA序列
  3. 算法:由0-5随机数设计0-8随机数
  4. wpf listview 切换数据源 位置不刷新_连载| 8 初识数据源
  5. 写代码抽取代码的技巧
  6. mysqldump: Got error: 1016: Can't open file: './xxx.frm' (errno: 24) when using LOCK TABLES
  7. bootstrap inputfile.js
  8. 未打清分标识处理方式
  9. k8s各类yaml文件
  10. 深入学习用Go编写HTTP服务器