工作學習筆記(三)to_char函式

小张不嚣张。發表於2024-11-08

在今天的工作中,前輩教我要把一個sql語句要改寫。...AND rt.begin_time <= now( ) AND rt.end_time >= now( ) ...
改為AND TO_CHAR(rt.begin_time, 'MMDD') &lt;= TO_CHAR(CURRENT_DATE, 'MMDD') AND TO_CHAR(rt.end_time, 'MMDD') &gt;= TO_CHAR(CURRENT_DATE, 'MMDD')
其中的to_char函式的作用很多,特此記錄一下。

  • to_char函式可以將時間日期按照指定的格式輸出
    需要注意的是得到的是字串,而非date型別。
    例如
    select sysdate,to_char(sysdate,'yyyymmdd hh24:mi:ss')from dual;
    輸出結果為
    2024/11/08 01:01:25 20240108 01:01:25

  • 用to_char()可以得到日期中的年、月、日、時、分
    select sysdate,to_char(sysdate,'yyyy')from dual;
    select sysdate,to_char(sysdate,'mm')from dual;
    輸出結果為
    2024/11/08 01:05:14 2024
    2024/11/08 01:05:14 11

  • 多種日期格式:

    YYYY:四位表示的年份 
    YYY,YY,Y:年份的最後三位、兩位或一位,預設為當前世紀 
    MM:01~12的月份編號 
    MONTH:九個字元表示的月份,右邊用空格填補 
    MON:三位字元的月份縮寫 
    WW:一年中的星期 
    D:星期中的第幾天 
    DD:月份中的第幾天 
    DDD:年所中的第幾天 
    DAY:九個字元表示的天的全稱,右邊用空格補齊 
    HH,HH12:一天中的第幾個小時,12進製表示法 
    HH24:一天中的第幾個小時,取值為00~23 
    MI:一小時中的分鐘 
    SS:一分鐘中的秒 
    SSSS:從午夜開始過去的秒數
    

相關文章