線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1087
推到 Plurk!
推到 Facebook!

將SELECT出來的每筆資料加上編號,方便分頁管理

尚未結案
Kenlin2004
一般會員


發表:20
回覆:33
積分:10
註冊:2004-10-27

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-11-05 13:22:01 IP:61.30.xxx.xxx 未訂閱
如何選出一個TABLE之後在每筆資料多加個編號欄位, 以便於將大型資料表分頁管理,像ORACLE有一個欄位 叫ROWNUM,在M$SQL 裡有沒有對等指令? (MYSQL也有LIMITE)
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-11-05 14:37:36 IP:210.65.xxx.xxx 未訂閱
Hi Kenlin2004,    請參考    http://delphi.ktop.com.tw/topic.php?topic_id=51436 http://delphi.ktop.com.tw/topic.php?topic_id=50353 ---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
Kenlin2004
一般會員


發表:20
回覆:33
積分:10
註冊:2004-10-27

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-11-05 15:20:52 IP:61.30.xxx.xxx 未訂閱
引言: http://delphi.ktop.com.tw/topic.php?topic_id=51436 http://delphi.ktop.com.tw/topic.php?topic_id=50353 ----------------------------------
select IDENTITY(int, 1, 1) as No, name, id from tableAAA order by name 問題來了~若每個分頁為50筆資料,要SELECT出第5頁則,WHERE子句的NO 必須在201到250之間 select IDENTITY(int, 1, 1) as No, name, id from tableAAA WHERE NO BETWEEN 201 AND 250 這樣的語法可否修正(有錯!)
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-11-05 16:44:20 IP:210.65.xxx.xxx 未訂閱
Hi Kenlin2004,    似乎有些誤解,請參考 http://delphi.ktop.com.tw/topic.php?topic_id=28763 你必須
select IDENTITY(int, 1, 1) as No, name, id into #tmp from tableAAA order by name
select * from #tmp where no between 201 and 250
drop table #tmp
---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
Kenlin2004
一般會員


發表:20
回覆:33
積分:10
註冊:2004-10-27

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-11-05 19:05:52 IP:61.30.xxx.xxx 未訂閱
引言: 似乎有些誤解,請參考 你必須 select IDENTITY(int, 1, 1) as No, name, id into #tmp from tableAAA order by name select * from #tmp where no between 201 and 250 drop table #tmp < face="Verdana, Arial, Helvetica">
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-11-08 01:00:13 IP:220.132.xxx.xxx 未訂閱
引言: >< face="Verdana, Arial, Helvetica"> 這樣並沒有辦法關連, 因為你原來的 tableAAA 就沒有可以和 tmp 關連的欄位, 所以這樣不能解決你的問題, 在 mssql 中沒有好方法解決此問題, 若是要依序取資料, 在 mssql 不利用 temp table 的話, 應無他法!!
hahalin
版主


發表:295
回覆:1698
積分:823
註冊:2002-04-14

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-11-08 02:37:45 IP:218.170.xxx.xxx 未訂閱
select IDENTITY(int, 1, 1) 這樣的用法在mssql中必須搭配 into temp table,這在T-SQL的help中有說明了...
Kenlin2004
一般會員


發表:20
回覆:33
積分:10
註冊:2004-10-27

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-11-16 13:58:53 IP:61.30.xxx.xxx 未訂閱
也許目前沒辦法,就將就著用吧! MS SQL 2005應有解決方案~ 上聯: 貓空飲茶,笑看人間悲歡離合 下聯: 鼠輩橫行,顛倒乾坤是非黑白 横批: 能抓老鼠的就是好貓
系統時間:2024-11-23 12:39:36
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!