English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

請問:
我的資料庫(Access)有日期欄位,假如資料是:
2005/3/10
2005/3/25
2005/5/7
2006/1/31
2006/9/13
2007/1/17
2007/1/30
2007/2/28
2007/3/15
現在,我想要針對日期年的部份做GROUP BY的動作,請問這要怎麼
設定、結果才會是:
2005
2006
2007
這樣呢??

2007-03-15 20:19:26 · 3 個解答 · 發問者 donna 1 in 電腦與網際網路 程式設計

3 個解答

我的作法是,到Access的新增一查詢,然後到SQL檢視部份(我習慣用SQL語法寫啦:P),寫:
SELECT XXX.日期, LEFT(XXX.日期,4) AS XYZ FROM XXX;

其中,XXX是你Table的名稱,而XYZ是查詢後新增出來的一欄位名稱。

這會先將日期的所有年放到XYZ裡,也就是2005,2005,2005,2006,2006,2007,.....
再來,將這查詢存起來,假設此查詢的名稱為 '取得年'

再新增一查詢,這時就可選 '取得年' 資料表了,當然,也有 getYear 欄位可選。
SQL語法如下:
SELECT 取得年.getYear FROM 取得年 GROUP BY 取得年.getYear
結果就出來了!!

2007-03-16 12:47:29 · answer #1 · answered by 麵包超人 3 · 0 0

1:點選_查詢_新增_設計檢視.
2:點選_你要查詢的資料表_新增_關閉.
3:將你要設定的資料_拖曳至下方欄位.
4:在空白欄位輸入__ 年份:Format([日期],"YYYY")
該欄位排序_點選遞增.
5:點選上方_檢視(V)_合計(L)
6:關閉_輸入你要的查詢單名稱.
上述作法.你就有一個GROUP物件去做報表群組的設定.
以上意見.如果不是你要的.請在聯繫.
"是全型.請自行改回半形符號.

2007-03-17 01:38:17 補充:
第4點:
再加一個欄位 __年:Count(Format([日期],"yyyy"))
下方_顯示_點取消__按上方__執行就可以了.
ps: group by 的欄位只能設定相關資料.
例如:該查詢 你只要設定
年份:Format([日期],"YYYY")
年:Count(Format([日期],"yyyy"))__下方_顯示_點取消
這二個設定.就可以達到你的要求.

2007-03-17 01:40:05 補充:
記得點選上方_檢視(V)_合計(L)

2007-03-16 05:50:49 · answer #2 · answered by pop 7 · 0 0

利用Year()函數@@
不確用Access有沒有這個函數,應該八九不離十吧
試試看吧@_@

2007-03-16 05:43:04 · answer #3 · answered by Phoenix 5 · 0 0

fedest.com, questions and answers