创建日期和修改日期的联合排序问题

披着虎皮 的石头 2009-12-04 04:44:18
oracle,表里有Create_Date和Modified_Date两个Date型字段。

新增记录时,Create_Date写入日期值,Modified_Date为null。

而修改记录时,修改Modified_Date为日期值。

如果在select型的sql语句的order by 中,根据这两个字段排序,优先按照修改日期,再按照创建日期。

order by Modified_Date, Create_Date 这样好像不行。
...全文
132 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wh62592855 2009-12-04
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zhuchuankun 的回复:]
sqlserver 中,是用order by COALESCE(ci.ModifiedDate, ci.CreatedDate这样实现的。
[/Quote]
试试order by nvl(ci.ModifiedDate,ci.CreatedDate)
看能达到你的要求不
crazylaa 2009-12-04
  • 打赏
  • 举报
回复
这样我只要order by modify_date desc就好咯。。。
crazylaa 2009-12-04
  • 打赏
  • 举报
回复
晕,我跟你差不多,但是第一次Modified_Date 一般我与createdate插入一样的值。。。
hnwgzxd 2009-12-04
  • 打赏
  • 举报
回复
[Quote=引用楼主 zhuchuankun 的回复:]
oracle,表里有Create_Date和Modified_Date两个Date型字段。

新增记录时,Create_Date写入日期值,Modified_Date为null。

而修改记录时,修改Modified_Date为日期值。

[/Quote]

兄弟,你这两个字段怎么建立的,我正问这个问题了
  • 打赏
  • 举报
回复
sqlserver 中,是用order by COALESCE(ci.ModifiedDate, ci.CreatedDate这样实现的。
  • 打赏
  • 举报
回复
看来大家,都没有往表里加创建日期和修改日期的基本经验。
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 navy887 的回复:]
应该可以吧
SQL codeorderby Modified_Dateasc,Create_Dateasc
[/Quote]

这样不行的
navy887 2009-12-04
  • 打赏
  • 举报
回复 1
应该可以吧
order by Modified_Date asc,Create_Date asc

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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