2011-02-13 80 views
2

我在我的表有場Tdate(文本型)MyTbl在訪問日期查詢幫助

我需要查詢該按日期排序,我試試這個:

select * from MyTbl order by Tdate 

但由於Tdate是文本我得到錯誤的結果

如何解決它?是否有任何轉換到訪問日期?

在此先感謝

+0

你的約會怎麼樣?給予重要的樣本... – 2011-02-13 14:29:53

回答

2

您可以嘗試使用CDate功能是這樣的:

select * from MyTbl order by CDate(Tdate) 

當心的日期格式,例如潛在的問題「01/02/2011」可能意味着1月2日或2月1日,CDate功能將使用系統上的區域設置。

+0

不幸的是,這不會使用索引,並且在一張大桌子上可能會很慢。 – 2011-02-14 02:24:14

1

我會運行一個查詢來更新您的文本字段,以使用文本(例如ISO格式,YYYY-MM-DD)中的非歧義,可排序的格式。一個更好的長期解決方案是改變字段的數據類型,所以這是一個日期,所以你不必去解決這些問題。