Access无法按照日期正确排序的问题。不可思议?看看就知道了。

adailee 2006-10-25 10:01:17
听上去好像不可能,是吧?
看看下面这条SQL。它的作用是:选出TABLE_1表中第9到12条记录,是按照UpdateTime进行排序的结果。其中UpdateTime是DateTime型。

SELECT TOP 3 * FROM (
SELECT TOP 3 * FROM (
SELECT TOP 12 * FROM(
SELECT TOP 12 Id,UpdateTime FROM TABLE_1
ORDER BY UpdatedTime ASC
)TB__1
)ORDER BY UpdatedTime DESC
)TB__2 ORDER BY UpdatedTime ASC

这条SQL在SQL Server 2000上可以执行得出正确的结果。但是在Access上执行,却返回了8条纪录。
如果把排序的字段,修改为Id(Int型),那就没有任何问题了。

这是怎么回事情?
我的MSN方式是:adailee@msn.com。若能解答,不胜感谢。
...全文
220 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
adailee 2006-10-25
  • 打赏
  • 举报
回复
wwwwb():
You are right. Thanks a lot.

wwwwb 2006-10-25
  • 打赏
  • 举报
回复
2、你的记录中,日期有重复的吧,ID是唯一的吧,jet sql 会返回重复值。
wwwwb 2006-10-25
  • 打赏
  • 举报
回复
参看
http://access911.net/fixhtm/71FAB41E15DCEFF3.htm?tt=
wwwwb 2006-10-25
  • 打赏
  • 举报
回复
1、ACCESS与SQL SERVER是有区别的;
2、你的记录中,日期有重复的吧,ID是唯一的吧,tet sql 会返回重复值。

7,713

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧