weixin_43456952
2019-05-23 16:58
采纳率: 100%
浏览 1.2k

sqlserver两个时间字段排序问题

时间字段1 时间字段2,这两个字段只有一个有时间,时间字段1有数据,时间字段2就没有,反之亦然,如何实现按时间大小排序(字段1有时间就按字段1,2也是)

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • Json-Huang 2019-05-23 22:14
    已采纳

    排序前:
    图片说明

    按时间逆序排序,执行如下sql:

     SELECT t2.id,time1,time2 from testB t2
      join
    ( SELECT id,time1 as c from testB where time2 is NULL
     UNION
     SELECT id,time2 as c from testB where time1 is NULL 
     ORDER BY c DESC
    )  t1
    on t2.id=t1.id ORDER BY t1.c DESC
    

    图片说明
    看看是不是这样的效果。

    点赞 打赏 评论
  • ZJHZ_叶 2019-05-30 14:37

    select * from test
    order by isnull(time1,time2) desc

    点赞 打赏 评论

相关推荐