Yahoo奇摩知識+ 將於 2021 年 5 月 4 日 (美國東部時間) 終止服務。自 2021 年 4 月 20 日 (美國東部時間) 起,Yahoo奇摩知識+ 網站將會轉為唯讀模式。其他 Yahoo奇摩產品與服務或您的 Yahoo奇摩帳號都不會受影響。如需關於 Yahoo奇摩知識+ 停止服務以及下載您個人資料的資訊,請參閱說明網頁。

小草 發問時間: 電腦與網際網路軟體 · 1 0 年前

請教SQL語法....

要請教各位SQL高手幾個問題

1.如何將格式是YYMM(varchar)的轉換成YYYY/MM/DD,

EX: 200712-->2007/12/31

2.如何將格式是YYYY(varchar)的轉換成YYYYMM,

EX: 2007-->200701

3.如何將格式是YYYY(varchar)的轉換成YYYY/MM/DD,

EX: 2007-->2007/1/31

4 個解答

評分
  • CYCU
    Lv 5
    1 0 年前
    最佳解答

    to_date('20071231','YYYY/MM/DD')

    如果用字串轉格式的話~

    格式就要正確ex:轉成YYYY/MM/DD 你就要有年月日

    所以不可能像以下這樣轉

    200712-->2007/12/31

    2007-->200701

    2007-->2007/1/31

    除非你在

    ex 200712後加上當天的日期 (or當月最後一天的日期etc...)

    to_date('200712'||to_char(sysdate,'DD'),'YYYY/MM/DD')--->結果是2007/12/05

    如果是 2007/12/05 轉為 20071205 可以這樣寫

    to_char(sysdate,'YYYY')||to_char(sysdate,'MM')||to_char(sysdate,'DD')

  • 1 0 年前

    若是Oracle DB

    1.如何將格式是YYMM(varchar)的轉換成YYYY/MM/DD,

    EX: P_DATE1 = '200712'-->2007/12/31

    TO_CHAR(LAST_DAY(TO_DATE(P_DATE1||'01','YYYYMMDD')),'YYYY/MM/DD')

    2.如何將格式是YYYY(varchar)的轉換成YYYYMM,

    EX: P_DATE2 = '2007'-->200701

    P_DATE2||'01'

    3.如何將格式是YYYY(varchar)的轉換成YYYY/MM/DD,

    EX: P_DATE3 = '2007'-->2007/1/31

    TO_CHAR(LAST_DAY(TO_DATE(P_DATE1||'0101','YYYYMMDD')),'YYYY/MM/DD')

    參考資料: Me
  • Yvonne
    Lv 4
    1 0 年前

    你可以先把資料表的名稱與欄位先說明一下

    再說明你希望撈出什麼樣的資料~

    你這樣問~很難幫你...

    參考資料: me
還有問題?馬上發問,尋求解答。