`
hz_chenwenbiao
  • 浏览: 994549 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

SQL查询前10条记录(SqlServer/mysql/oracle/sybase)[语法分析] (转)

阅读更多

这篇文章主要是分析下,四种数据库(SqlServer/Oracle/Mysql/Sybase)查询前N条数据,或者查询中间N条数据的方法。对四种数据库的语法进行一下简单的分析。属于初级教程,高手请自动跳过。以后也会写一些连贯性的渐渐深入的东西。例如,下一篇就会和这篇有关。会写些常用的分页SQL写法,里面就会使用到今天写的,查询前N条或者中间N条的方法。之后再深入到分页存储。接下来也会写一些,异构数据库的语法分析系列,针对很多朋友,同事,客户经常问到的一些问题做一个整理,一方面备忘,一方面给更多的朋友提供交流学习的机会。

 

进入正题,MSSQL查询前10条的方法为:

 

select top X * from table_name  --查询前X条记录,可以改成需要的数字。
select top n * from (select top m * from table_name order by column_name ) a order by column_name desc  --查询第N到M条记录。常用的分页也是这种方式。
例如常用的分页方式:
declare @page int
declare @row int
set @page=2 --页数
set @row=3  --每页展示行数
select top (@row) * from (select top (@row*@page) * from table_name order by id  ) a order by id desc  --最基本的分页方式,改变@row和@page达到分页效果

 

MYSQL查询前10条的方法(limit参数的第一个参数n(如下面的0或1)表示前n条记录是不在选择范围内,相当于hibernate的setFirstResult的参数加一;第二个参数表示要选择的记录条数,相当于hibernate的setMaxResult的参数):

select * from table_name limit 0,10  --通常0是可以省略的,直接写成  limit 10。0代表从第0条记录后面开始,也就是从第一条开始
select * from table_name limit 1,10  --则为从第一条后面的记录开始展示,也就是说从第二条开始。

MySQL查询前5条方法(假设一个表为users表,这里作为子查询时要加入别名不然会出错,还有一点要注意的是order by在limit前面,不然还没出结果前就说要前几条,怎么搞嘛,所以limit要放最后。):

select * from (select * from users order by id limit 0 , 10) partOfUsers order by id desc limit 0 , 5;

 

 

ORACLE查询前十条的方法:

select * from table_name where rownum<X --X为前多少条记录
select * from (select a.*,a.rownum rn from (select * from table_name) a where a.rownum<M) where rn>n --这句就是从n到m也的数据,分为三层结构

 

载自:http://www.cnblogs.com/dba_xiaoqi/archive/2011/02/15/1878796.html

不防看看该作者其它文章,也是写得挺好的。

分享到:
评论

相关推荐

    数据库设计/自动安装工具BDB 2007 V2.3(For Oracle/MS SQLServer/Access/MySQL/SQLAnyWhere/Sybase)

    BDB是跨数据库平台的数据库设计和自动安装工具、 支持Oracle、MS SQLServer、Access、MySQL、SQLAnyWhere、Sybase数据库。 通过BDB可以快速建立数据库模型、并随时与实体数据库进行双向同步。 同时它还可以...

    数据库设计和自动安装工具BDB V2.2(for Oracle/MS SQLServer/MySQL/Access/SQLAnywhere/Sybase)

    BDB是跨数据库平台的数据库设计和自动安装工具、 支持Oracle、MS SQLServer、Access、MySQL、SQLAnyWhere、Sybase数据库。 通过BDB可以快速建立数据库模型、并随时与实体数据库进行双向同步。 同时它还可以...

    SQL数据库管理,编辑,查询工具

    SqlDbx是一个多功能的SQL数据库管理,编辑,查询工具,该数据库管理工具支持oracle,sybase ase, ibm,db2/udb, microsoftsql server 与odbc数据源,功能支持sql编辑,sql查询。 SqlDbx数据库编辑及查询工具,支持SQL...

    DbVisualizerPro 12.0.7 x86/x64 支持Oracle SQLServer MySQL 等多数据库

    DbVisualizer是一个完全基于JDBC的跨平台数据库管理工具,内置SQL语句编辑器(支持语法高亮),凡是具有JDBC数据库接口的数据库都可以管理,已经在Oracle, SQLServer, Sybase, DB2, MySQL, InstantDB, Cloudcape, ...

    数据库工具DbVisualizerPro12.1.5 x86/x64 支持Oracle SQLServer MySQL等

    DbVisualizer是一个完全基于JDBC的跨平台数据库管理工具,内置SQL语句编辑器(支持语法高亮),凡是具有JDBC数据库接口的数据库都可以管理,已经在Oracle, Sybase, DB2, MySQL, InstantDB, Cloudcape, HyperSonic ,...

    SqlDbx 5.11专业版-无任何功能限制(中文版)

    支持的数据源有MSSQL/MYSQL/ODBC/DB2/ASE/SYBASE/ORACLE/PostgreSQL/Sqlite等数据源。能够同时操作打开多个数据库。 这个是SqlDbx 5.11专业版汉化和谐版,解除了各种限制 支持多窗口链接查询;支持Unicode编码,...

    优秀数据库工具 Database .NET Free 32.1.7761.1 + x64.zip

    支持多重数据库管理工具,支持市面上的大多数数据库系统:例如 Microsoft Access、Generic ODBC、SQL Server、LocalDB、SQL Server Compact、SQL Azure、MySQL、Oracle、Sybase ASE 等等。 Database .NET 中文版 也...

    BSQL中文版【SQL智能化查询分析工具】

    BSQL是贝恩软件(BAINSOFT)发布的SQL智能化查询分析工具,支持Oracle,SQLServer,MySQL,Access,Sybase和SQLAnywhere数据库。 BSQL的主要特性: 1)SQL语法快速自动完成。 2)快速脚本自动生成。 3)提供专用的SQL...

    SQL智能化查询分析工具-(贝恩)BSQL v1.3

    支持Oracle,SQLServer,MySQL,Access,Sybase和SQLAnywhere数据库。 BSQL的主要特性: 1)SQL语法快速自动完成。 2)快速脚本自动生成。 3)提供专用的SQL查询编辑器。 4)自动快速产生专业的数据库报表。 提供...

    SQL语句生成及分析器

    大型数据库:Microsoft SQL Server、Sybase、Oracle 准备提供对DB2,informix,ingress,MySQL的更好支持 2、数据库的连接采取ADO方式,无需安装和卸载 3、支持几乎所有的SQL语法: 内连接(inner join)和外连接...

    sql assist 9.5.rar

    支持10个主要的数据库系统:Oracle, SQL Server, DB2 UDB, DB2 for iSeries, Sybase ASE, Sybase SQL Anywhere, Postgre SQL, Amazon Redshift, MySQL, Microsoft Access等等 1、拥有可视SQL查询生成器 2、可轻松...

    SQL智能查询分析器BSQL

    BSQL是贝恩软件(WWW.BAINSOFT.COM)发布的SQL智能查询分析工具, 支持Oracle,SQLServer,MySQL,Access,Sybase和SQLAnywhere数据库。 &lt;br&gt;BSQL的主要特性: 1)SQL语法快速自动完成。 2)快速脚本自动...

    SQL智能查询分析器BSQL v1.3(2008.7.5)

    BSQL是贝恩软件(WWW.BAINSOFT.COM)发布的SQL智能查询分析工具,支持Oracle,SQLServer,MySQL,Access,Sybase和SQLAnywhere数据库。 &lt;br&gt;BSQL的主要特性: 1)SQL语法快速自动完成。 2)快速脚本自动生成...

    SQL+Assistant+v7.2

    配置支持8个主要的数据库系统:Oracle、SQLServer、DB2、SybaseASE、SybaseASA、PostgreSQL、MySQL和MicrosoftAccess和他们的SQL方言 快速,磁盘和内存占用少 增加SQL开发人员效率 提供互动SQL参考和SQL代码援助制度...

    SQL智能查询分析器BSQL最新版

    增加保存自动列表大小功能 9, 更正了几个bug &lt;br&gt;关于BSQL: BSQL是贝恩软件(WWW.BAINSOFT.COM)发布的SQL智能查询分析工具, 支持Oracle,SQLServer,MySQL,Access,Sybase和SQLAnywhere数据库。...

    SQLAssistant beta 6 + SN 码

    7.支持8个主要的数据库系统:Oracle, SQL Server,DB2,Sybase ASE,Sybase ASA, Postgre SQL , MySQL和Microsoft Access和他们的SQL方言 8.快速,磁盘和内存占用少 9.在不中断任何现有的程序和使用下可以立即很...

    SQLAssistant 6 BETA 注册版

    7.支持8个主要的数据库系统:Oracle, SQL Server,DB2,Sybase ASE,Sybase ASA, Postgre SQL , MySQL和Microsoft Access和他们的SQL方言 8.快速,磁盘和内存占用少 9.在不中断任何现有的程序和使用下可以立即很...

    SQLAssistant 5.2.59 注册版

    7.支持8个主要的数据库系统:Oracle, SQL Server,DB2,Sybase ASE,Sybase ASA, Postgre SQL , MySQL和Microsoft Access和他们的SQL方言 8.快速,磁盘和内存占用少 9.在不中断任何现有的程序和使用下可以立即很...

    SQL智能完成工具BDB

    不过与上述软件只能在单个特定数据库平台使用不同, BDB支持更多的数据库平台,具体包括: Oracle、MS SQLServer、MySQL、Access、SQLAnywhere和Sybase。 &lt;br&gt; 一、使用 &lt;br&gt;运行BDB,切换至...

    全功能的数据库工具BDB v2.8

    支持Oracle、SQLServer、MySQL、Access、SQLAnywhere和Sybase。 &lt;br&gt;BDB同时是非常好用的SQL智能化查询分析工具。 &lt;br&gt;如果您目前使用的是SQLServer的查询分析器进行数据库数据查询分析, 那么不妨试...

Global site tag (gtag.js) - Google Analytics