问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

用SQL如何查询第几条到第几条之间的数据?想不出来呢,网上的答案都不行的

发布网友 发布时间:2022-04-07 15:05

我来回答

6个回答

热心网友 时间:2022-04-07 16:34

这好办,比如查询第10条到第20条数据,表是table1,列是lie1,lie2,那就是
select top 20 from table1 where lie1 not in(select top 10 lie1 from table1)
括号里是查出前10条数据,然后查出所以的前20条数据,排除前10条,就是第10条到第20条了啊!这是我们一直在用的方法,思路很清晰、、、

热心网友 时间:2022-04-07 17:52

不同的数据库, 写法不一样。 例如我要检索 第11条到第20条

MySQL 数据库的最简单
SELECT * FROM 表 LIMIT 11, 10

SQL Server 的稍微折腾一些
SELECT
TOP 10
top20.*
FROM
(
SELECT
TOP 20
*
FROM

ORDER BY
排序字段 DESC
) AS top20
ORDER BY
top20.排序字段 ASC追问这种写法试过了,查询出在查询区间内的多少条,并没有实现第几条到第几条的数据,你想一下确实是那个结果

追答你要实现那个 物理行的顺序, 也就是 不按任何字段排序的话. 那么要用 RowNumber 了。
如果你的数据库, 还是 Access,或者 SQL Server 2000 那就没办法了。

CREATE TABLE #temp (
id INT
);
GO

INSERT INTO #temp
SELECT 1 UNION ALL
SELECT 3 UNION ALL
SELECT 5 UNION ALL
SELECT 7 UNION ALL
SELECT 9 UNION ALL
SELECT 2 UNION ALL
SELECT 4 UNION ALL
SELECT 6 UNION ALL
SELECT 8 UNION ALL
SELECT 0 UNION ALL
SELECT 11 UNION ALL
SELECT 13 UNION ALL
SELECT 15 UNION ALL
SELECT 17 UNION ALL
SELECT 19 UNION ALL
SELECT 12 UNION ALL
SELECT 14 UNION ALL
SELECT 16 UNION ALL
SELECT 18 UNION ALL
SELECT 10 UNION ALL
SELECT 21 UNION ALL
SELECT 23 UNION ALL
SELECT 25 UNION ALL
SELECT 27 UNION ALL
SELECT 29 UNION ALL
SELECT 22 UNION ALL
SELECT 24 UNION ALL
SELECT 26 UNION ALL
SELECT 28 UNION ALL
SELECT 20
GO

SELECT
id
FROM
(
SELECT
row_number() OVER (order by (select 1)) AS no,
id
FROM #temp
) t
WHERE
no >= 11 AND no <=20
GO

id
-----------
11
13
15
17
19
12
14
16
18
10

(10 行受影响)

下面这种写法,速度上慢点,但是结果和上面的一样。
SELECT
top 10
*
FROM
#temp
WHERE
id NOT IN (SELECT top 10 id FROM #temp)
GO

热心网友 时间:2022-04-07 19:27

select top 20 from table1 where lie1 not in(select top 10 lie1 from table1)
SQL SERVER是这样写。不知道你是什么数据库。不过原理都是一样的。先查出大的集合,然后排除掉其中一部分,剩下的就是你要的了追问不奏效哦,从第10条开始查查出了第十条之后的20条,

追答假设你的排序字段是lie1
select top 20 from table1 where lie1 not in(select top 10 lie1 from table1 order by lie1) order by lie1
而且lie1是不重复的。

热心网友 时间:2022-04-07 21:18

select * from (select *, rownum rowid from tablename where rownum<20)
where rowid >=10
这个原理和分页一样,具体到网上搜分页查询语句

热心网友 时间:2022-04-07 23:26

有个

ROW_NUMBER() OVER() 的函数, 可以取得行数,即 1,2,3,4,5

要 1 --> “第一条” 的话...

估计要去写个函数, 或者 CASE WHEN

热心网友 时间:2022-04-08 01:51

没有第几条到第几条吧,只有前几条吧,用TOP试试
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
360浏览器怎么设置倍速播放 ...先讲女主的灵魂飘荡了一段时间,然后重生,请问是那本? 拯救者散热器怎么开 电脑如何一键还原系统电脑一键还原怎么操作 神舟笔记本电脑怎么重新设置神舟战神bios恢复出厂设置 神舟电脑恢复出厂设置神舟战神怎么恢复原厂系统 水泥楼梯如何铺木楼梯 家里面楼梯是水泥的不想铺地毯或者地砖还能铺什么 楼梯的水泥台阶上可以铺地板革吗 手机腾讯会议共享屏幕播放视频没声 远程桌面已经设置好了 为什么无法从其他电脑远程 计算机无法与远程计算机连接,你可能需要更改网络位置 远程桌面输入了正确的ip却不能连接到那台机,怎么搞好? 我有一内网IP,外面的电脑为什么不能进行远程控制啊? 服务器IP地址更改后无法连接网络 别人用过的监控摄像头修改IP地址后别人还能远程监控吗? linux修改IP后,使用xmanager中的xbrowser无法远程了 我之前的电脑可以远程的,换了IP之后就不可以了,求解? 黄河大合唱的社会价值极其艺术成就是什么 我办公室电脑原来是固定ip,可以从家直接远程过远程,来,但现在改为自动获取ip了,如何再进行远程? 荔湾湖一年四季作文 《黄河大和唱》在当时的中国产生了什么样的影响 到老婆单位用笔记本上网,网线连接正常,需要手动设置ip,设置后远程计算机没有反应。 有关于&quot;惠陵&quot;~~~ 本地连接受*!改了IP连接上了又出现远程计算机被终止!怎么办? 百日红作文从几个方面写? 内网一台服务器在防火墙上映*一个公网的ip,我修改了服务器的远程桌面端口号,为什么修改后不能远程了 楼观台的介绍 换了ip以后为什么么远程桌面显示 请介绍一下荔湾湖公园的历史 斐讯k2路由器如何静态ip连接 C语言编程入门 用什么教材最好?简单易懂的 有关全国人民代表大会及政协会议的举办时间是怎么安排的 一七年人大会议时间表 咸小天才电话手表咸阳店在哪里 绝育对猫的好处和坏处 母猫绝育好不好 让猫生一窝再绝育,会不会影响猫的健康? 一定要带猫咪去做绝育手术吗?? 请教大家:速腾空调怎么清洗 新西兰属于澳洲国家吗 澳大利亚是独占一个大陆的国家吗?不是还有新西兰在大洋洲吗? 澳大利亚与新西兰在同一个大陆架吗? 新西兰和澳大利亚的关系怎样? 新西兰属于哪个大洲 澳大利亚和新西兰到底有什么不一样? 澳大利亚与新西兰有什么区别? 关于新西兰和澳大利亚。 澳大利亚是独占整个大州吗不是还有新西兰吗 澳大利亚是大陆还是岛屿