统计sql语句改造 (当sign_date不为空时,用sign_date升序排列,当sign_date为空时, 用issu_date升序排列)
select * from ( select '2011-09-14' as sign_date,'2011-09-01' as issu_date union select '2011-09-10' as sign_date,'2011-09-05' as issu_date union select '2011-09-12' as sign_date,'2011-09-02' as issu_date union select '' as sign_date,'2011-09-04' as issu_date union select '' as sign_date,'2011-09-05' as issu_date ) a order by sign_date ,issu_date
结果:
结果出来后,发现第一列数据总是空排在前面, 所以在原有的基础上构造NULL让其参与排序。

select case when sign_date='' then'NULL' else sign_date end sign_date,issu_date from ( select '2011-09-14' as sign_date,'2011-09-01' as issu_date union select '2011-09-10' as sign_date,'2011-09-05' as issu_date union select '2011-09-12' as sign_date,'2011-09-02' as issu_date union select '' as sign_date,'2011-09-04' as issu_date union select '' as sign_date,'2011-09-05' as issu_date ) a order by sign_date ,issu_date
结果:

| 博客地址: | http://www.cnblogs.com/sword-successful/ |
| 博客版权: | 本文以学习、研究和分享为主,欢迎转载,但必须在文章页面明显位置给出原文连接。 如果文中有不妥或者错误的地方还望高手的你指出,以免误人子弟。如果觉得本文对你有所帮助不如【推荐】一下!如果你有更好的建议,不如留言一起讨论,共同进步! 再次感谢您耐心的读完本篇文章。 |

浙公网安备 33010602011771号