2011-02-13 87 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)中的非歧义,可排序的格式。一个更好的长期解决方案是改变字段的数据类型,所以这是一个日期,所以你不必去解决这些问题。