最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

sql 查詢記錄數(shù)結(jié)果集某個(gè)區(qū)間內(nèi)記錄

 更新時(shí)間:2012年11月29日 11:03:37   作者:  
sqlserver如何實(shí)現(xiàn)查詢記錄數(shù)某個(gè)區(qū)間內(nèi)記錄,本文將提供多種解決方法,需要了解的朋友可以參考下
以查詢前20到30條為例,主鍵名為id

方法一: 先正查,再反查
select top 10 * from (select top 30 * from tablename order by id asc) A order by id desc

方法二: 使用left join
select top 10 A.* from tablename A
left outer join (select top 20 * from tablename order by id asc) B
on A.id = B.id
where B.id is null
order by A.id asc

方法三: 使用not exists
select top 10 * from tablename A
where id not exists
(select top 20 * from tablename B on A.id = B.id)

方法四: 使用not in
select top 10 * from tablename
where id not in
(select top 20 id from tablename order by id asc)
order by id asc

方法五: 使用rank()
select id from
(select rank() over(order by id asc) rk, id from tablename) T
where rk between 20 and 30

中第五種方法看上去好像沒(méi)有問(wèn)題,查了下文檔,當(dāng)over()用于rank/row_number時(shí),整型列不能描述一個(gè)列,所以會(huì)產(chǎn)生非預(yù)期的效果. 待考慮下,有什么辦法可以修改為想要的結(jié)果.

相關(guān)文章

最新評(píng)論

丹棱县| 蒙山县| 丘北县| 高台县| 东平县| 郯城县| 浦北县| 叙永县| 宁阳县| 兰溪市| 宁陕县| 合阳县| 梨树县| 兴安盟| 南宁市| 乐都县| 黑河市| 尉氏县| 长岛县| 东乡族自治县| 阳原县| 北辰区| 临沂市| 阿拉尔市| 都江堰市| 石首市| 长治县| 格尔木市| 罗源县| 上杭县| 梅州市| 司法| 通辽市| 铁岭市| 百色市| 威远县| 揭东县| 安塞县| 汕尾市| 万年县| 龙里县|