全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1314
推到 Plurk!
推到 Facebook!

DBGrid 顯示最後幾筆資料

尚未結案
kyle
一般會員


發表:2
回覆:3
積分:1
註冊:2003-09-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-08-25 23:25:20 IP:218.169.xxx.xxx 未訂閱
請教各位高手 Select 出來的資料如何在 DBGrid 中只顯示最後 5 筆資料 感激不盡
timhuang
尊榮會員


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-08-26 09:09:57 IP:203.95.xxx.xxx 未訂閱
Hi, 可以在該 dataset 由資料庫取出資料時就只 select 最後 5 筆即可, 如原來的 command 為, select orderno, ordername, orderdate from orders 改為 select top 5 orderno, ordername, orderdate from orders order by orderno desc
kyle
一般會員


發表:2
回覆:3
積分:1
註冊:2003-09-19

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-08-26 09:58:08 IP:210.62.xxx.xxx 未訂閱
感謝 timhuang 的解答 但我是想在不排序的狀況下Select出來的資料由最後一筆往上Show在DBGrid上 謝謝
timhuang
尊榮會員


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

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-08-26 10:12:54 IP:203.95.xxx.xxx 未訂閱
ok, 所以你只是希望 dataset 資料是全部, 然後只是在顯示的時候, 就移到最後五筆是嗎? 這樣的話, 可以使用 Last 再往前移動 5 筆, 如此一來就可以只顯示五筆, 如,    
begin
  ADOQuery1.Open;
  ADOQuery1.Last;
  ADOQuery1.MoveBy(-5);
end;
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-08-26 10:58:34 IP:202.62.xxx.xxx 未訂閱
您好﹗    試試這樣﹐再加入一個ADODataSet﹐將其SQL值設為'Select * From 資料表名稱'﹐Open此ADODataSet﹒以ADOQuery舉例如下﹕
begin
  ADOQuery1.Close;
  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Add('Select * From 資料表名稱 ');
  ADOQuery1.SQL.Add('Where 索引欄位名稱 Not In ');
  ADOQuery1.SQL.Add('(Select top '   IntToStr(ADODataSet1.RecordCount-5)   ' 索引欄位名稱 From 資料表名稱)');
end;
參考看看﹗ ========================= 大病初愈﹐休養調整中... =========================
------
忻晟
kyle
一般會員


發表:2
回覆:3
積分:1
註冊:2003-09-19

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-08-26 11:47:10 IP:210.62.xxx.xxx 未訂閱
此地方真是臥虎藏龍,感謝解答, 但得分只能給一人,只好對cashxin2002說感謝
系統時間:2024-09-12 15:35:35
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!