sqlserver两个时间字段排序问题

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

sql

2个回答

排序前:
图片说明

按时间逆序排序,执行如下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

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

hjs218
Json-Huang 回复weixin_43456952: 不是每个都是冲着C币来的,哈哈
大约一年之前 回复
weixin_43456952
weixin_43456952 把ORDER BY c DESC去掉就好了,感谢!没有C币也有人愿意帮助,我要赚些C币感谢帮助过我的人。
大约一年之前 回复
weixin_43456952
weixin_43456952 我建了testb表 id time1 time2字段 在查询分析器出现 除非同时指定了 TOP,否则 ORDER BY 子句在视图、内嵌函数、派生表和子查询中无效。
大约一年之前 回复

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

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐