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

如何用ADOquery 查詢資料表中最新的日期?

尚未結案
jerrycho
一般會員


發表:3
回覆:4
積分:1
註冊:2004-10-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-02-28 16:11:28 IP:218.167.xxx.xxx 未訂閱
請問如果我有一個資料表內有多筆資料要如何查詢時間欄位判斷哪一筆是日期最新的 資料表如: a b c ==================== a1 1999/3/21 5 a1 1999/3/20 20 b2 2004/10/10 15 b1 2003/5/5 99 b1 2005/2/28 50 希望查詢結果為 a b c ==================== a1 1999/3/21 5 b2 2004/10/10 15 b1 2005/2/28 50 不知這樣的結果該如何查詢? 麻煩各位大大了.
timhuang
尊榮會員


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-02-28 17:10:41 IP:220.132.xxx.xxx 未訂閱
Hi, 若是在 sql server 可以這樣下, select nta.* from ta1 nta, (select distinct a as na, (select top 1 b from ta1 where a=ta.a order by b desc) as nb from ta1 ta) tb where nta.a=tb.na and nta.b=tb.nb 其中 ta1 是你的 table name 發表人 - timhuang 於 2005/02/28 17:11:22
jerrycho
一般會員


發表:3
回覆:4
積分:1
註冊:2004-10-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-03-01 03:40:39 IP:218.167.xxx.xxx 未訂閱
大大再請問一下歐 nta.* 的 nta是? select distinct a as na 的 a式欄位名稱那 na是.?? select top 1 b from ta1 where a=ta.a order by b desc 其中 b式欄位名稱 那a=ta.a 的 ta是? as nb from ta1 ta) tb 其中nb是.? ta是?? where nta.a=tb.na and nta.b=tb.nb 其中 nta.a是.? tb.na是.?? nta.b是? tb.nb是? 還有問一下大大我的資料庫是Access 的是用BCB 6的adoquery 語法跟大大說的sql server 是一樣的媽.? 麻煩了
folkchen
高階會員


發表:9
回覆:232
積分:173
註冊:2003-10-09

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-03-01 11:59:07 IP:211.20.xxx.xxx 未訂閱
timhuang的方法叫 SubQuery 我以為只有Oracle有這種寫法,原來SQL Server也有 就是把Query出來的東東當成View,馬上再Query一次 印象中Access不能用這種方式查資料,但是我不確定,你可以試試 若是不行,你就要用View來實現了,將()中的Select做成View,給另一個View來查用就可以了 這個SQL可以再改一下不需要用到3層的Select 如果你的Table叫Table_A,欄位分別為a,b,c select Ta.* from Table_A as Ta , (select a,max(b) as mDate From Table_A Group By a) as Tb where Ta.a=Tb.a and Ta.b=Tb.mDate 如果你不需要用到C欄位,其實只要用一個SQL就可以了 select a,max(b) as mDate From Table_A Group By a
系統時間:2024-05-03 19:39:30
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!