討論區快速選單
知識庫快速選單
傑米的攝影旅遊筆記 掌握Salesforce雲端管理秘訣 網路投保旅行平安險
[ 回上頁 ] [ 討論區發言規則 ]
select 第 51 ~ 100 筆資料
更改我的閱讀文章字型大小
作者 : crlin3(ttttttt) 人氣指數超過30000點
[ 貼文 160 | 人氣 30283 | 評價 0 | 評價/貼文 0 | 送出評價 26 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/2/10 上午 09:15:00
若要  select 第 1 ~ 50 筆資料, 可用 "select top 50 * from Table1"
請問 select 第 51 ~ 100 筆資料, sql 語法為何呢  ? thanks

作者 : mydick(ㄉ一ˊㄎㄜˋ) SQL Language優秀好手貼文超過200則
[ 貼文 223 | 人氣 6296 | 評價 2890 | 評價/貼文 12.96 | 送出評價 34 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
主題發起人crlin3註記此篇回應為最佳解答 2006/2/10 下午 12:26:32
>若要 select 第 1 ~ 50 筆資料,可用 'select top 50 * from Table1'
>請問 select 第 51 ~ 100 筆資料,sql 語法為何呢?

選擇某區間內的資料, 你可以視為對所有資料"掐頭去尾", 即是您所需要的結果!

您已經會"去尾" 了(Select Top n ...), 掐頭只是相反方向排序的"去尾"!
所以, 您需要兩個步驟以分別達成"去尾" 及"掐頭"! 為了要結合兩個步驟在單一的SQL command 之中, 可以藉由Inline view/ Derived table 達成!

請參考下列樣式, 您即可自行實現需要的答案:
/* m=100; n=100-(51-1) */
Select Top n *
 From (Select Top m * From ..... Order By fldX) Tmp
 Order By fldX Desc
作者 : z162031(Adams)
[ 貼文 3 | 人氣 1 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/2/10 下午 04:11:34
比較簡單的作法:
若A為Table1的PRIMARY KEY
select top 50 * from Table1 where A not in (select top 50 A from Table1)
下ㄧ個SQL Command就可以了!
作者 : z162031(Adams)
[ 貼文 3 | 人氣 1 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/2/10 下午 04:11:41
比較簡單的作法:
若A為Table1的PRIMARY KEY
select top 50 * from Table1 where A not in (select top 50 A from Table1)
下ㄧ個SQL Command就可以了!
作者 : sryang(貓老大) 貼文超過200則
[ 貼文 230 | 人氣 68 | 評價 680 | 評價/貼文 2.96 | 送出評價 3 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/5/31 下午 11:13:14
這個問題,用 MySQL 的人就比較幸福了
MySQL 可以用 LIMIT 來限定取出的筆數
例如:
SELECT * FROM table_1 LIMIT 50
表示取前 50 筆
SELECT * FROM table_1 LIMIT 50, 50
表示跳過前 50 筆後,取 50 筆,也就是 51~100 筆
作者 : duck2001(醉貓)
[ 貼文 10 | 人氣 933 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/6/27 下午 01:23:05
Hello!!!

就是先找100筆,再反回來找50筆

select top 50 * from
(
    select top 100 * from tblName
     order by PK asc
) as vw1
    order by PK desc
 板主 : AXNET
 > SQL Language - 討論區
 - 最近熱門問答精華集
 - 全部歷史問答精華集
 - SQL Language - 知識庫
  ■ 全站最新Post列表
  ■ 我的文章收藏
  ■ 我最愛的作者
  ■ 全站文章收藏排行榜
  ■ 全站最愛作者排行榜
  ■  月熱門主題
  ■  季熱門主題
  ■  熱門主題Top 20
  ■  本區Post排行榜
  ■  本區評價排行榜
  ■  全站專家名人榜
  ■  全站Post排行榜
  ■  全站評價排行榜
  ■  全站人氣排行榜
 請輸入關鍵字 
  開始搜尋
 
Top 10
評價排行
SQL Language
1 ㄉ一ˊㄎㄜˋ 1330 
2 路人 1270 
3 坤哥 700 
4 吳馨琳 460 
5 凡人 440 
6 老骨頭 390 
7 pome5 380 
8 BK. 330 
9 Tony 310 
10 HKLN.net 250 
SQL Language
  專家等級 評價  
  一代宗師 10000  
  曠世奇才 5000  
  頂尖高手 3000  
  卓越專家 1500  
  優秀好手 750  
Microsoft Internet Explorer 6.0. Screen 1024x768 pixel. High Color (16 bit).
2000-2019 程式設計俱樂部 http://www.programmer-club.com.tw/
0.0625