关于SQL的练习

来源:互联网 发布:韩网络短剧 奇迹 编辑:程序博客网 时间:2024/05/22 13:03

看到一个题目有一点意思,和大家分享。

 如果sysdate 不是本月1号而且处于早上5点以前,那么返回前一天的日期。

 

该题目主要用到decode()的方法,判断是否5点以后,用sign()和 decode()结合起来判断。

select

       to_char( sysdate, 'dd' ), '01' ,sysdate,                          ----------------判断是否1号

        decode(  sign( 5 - to_char( sysdate, 'HH24' ) ) , 1,    --------------------判断是否5点以前

                              sysdate - 1, sysdate) )

from dual

原创粉丝点击