网上有关“SQL如何显示查询结果的前100条?”话题很是火热,小编也是针对SQL如何显示查询结果的前100条?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您来源:https://www.xn--v30ao21a.cn/cshi/202412-22.html

sqlserver支持top关键字,返回前100条数据。select

top

100

*

from

table;//

返回前100行数据

mysql支持limit,一个参数:select

*

from

table

limit

100;

//返回前100行记录

Oracle需要使用rownum。select

*

from

table

where

rownum<=100;

//返回前100条数据

TOP

子句

TOP

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

对于拥有数千条记录的大型表来说,TOP

子句是非常有用。

SQL

Server

的语法:

SELECt

TOP

number|percent

column_name(s)

FROM

table_name

limit子句用于强制select语句返回置顶的记录数,参数必须是整数常量。一个参数是返回前几条记录;两个参数时,第一个参数指定第一个返回记录行的偏移量(初始记录行的偏移量是0),第二个参数指定返回记录的最大数目。

rownum是oracle系统顺序分配为从查询返回的行的编号,返回的第一行分配的是1,第二行是2,依此类推,这个伪字段可以用于限制查询返回的总行数,且rownum不能以任何表的名称作为前缀

SQL即结构化查询语言(Structured

Query

Language),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。SQL语句无论是种类还是数量都是繁多的,很多语句也是经常要用到的,SQL查询语句就是一个典型的例子,无论是高级查询还是低级查询,SQL查询语句的需求是最频繁的。

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来源:https://www.xn--v30ao21a.cn/xwzx/202412-13.html

by的查询限制

Access中对select

top的语句支持有限,如果要在查询top语句的后面使用order

by,则order

by排序字段必须是无重复值,如果有重复值的话,那么这个TOP很可能会失效,会返回所有记录。

解决办法:在order

by

最后面加入主键id,如:

select

top

10

from

[tableName]来源:https://www.xn--v30ao21a.cn/cshi/202502-289.html

order

by

排序字段1,id

1.2来源:https://www.xn--tlqp42atki61ai42f.cn/cshi/202502-162.html

带子查询的示例

假如id是表[tableName]的主键,以下语句期望返回三条记录,但结果返回4条记录

select

top

3

*

from

[tableName]来源:https://www.xn--wbty01dw4s.cn/cshi/202502-275.html

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来源:https://www.xn--v30ao21a.cn/xwzx/202412-61.html

3

MySQL

select

*

from

[tableName]

where

[query

condition]

limit

10

4来源:https://www.xn--v30ao21a.cn/cshi/202502-255.html

SQL

Server

4.1

读取前10条

select

top

(10)

*

from

[tableName]

where

[query

condition]

4.2来源:https://www.xn--wbty01dw4s.cn/cshi/202502-258.html

读取后10条

select

top

(10)

*

from

[tableName]

order

by

id

desc来源:https://www.xn--v30ao21a.cn/cshi/202502-303.html

4.3

按照某个排序,第5到10这几个记录

select

top

6

*

from

[tableName]来源:https://xn--wbty01dw4s.cn/cshi/202502-158.html

where

id

not

in(select

top

4

id

from

[tableName])

5

Oracle

select

*

from

[tableName]

where

rownum<=10

关于“SQL如何显示查询结果的前100条?”这个话题的介绍,今天小编就给大家分享完了,如果对你有所帮助请保持对本站的关注!