Oracle日期格式化以及extract函數的使用

來源:互聯網
上載者:User

標籤:image   解決   bubuko   括弧   使用   min   ima   nbsp   span   

  由於業務需要,這兩天在學習Oracle,發現Oracle裡面的日期它會給你轉成一種很不習慣的格式,於是想著怎麼樣把它弄成年、月、日的格式來顯示,查資料、看文檔,最終找到解決辦法了,其實是用到了to_char方法。

  例如,在Oracle裡面,一個表格裡日期如2017-05-06,列名為time,查詢後發現返回的是06-5月 -17這種格式的,看著賊不爽,要想把它轉成年月日這種格式的,可以這樣做,

to_char(time, ‘YYYY-MM-DD‘) as time  // 括弧裡的time表示表中的列名,第二個time則表示轉換後的日期列名仍然為time

  現在轉換後的日期就是這樣的,2017-05-06

 

  那麼extract函數是幹什麼的呢?extract英語意思是提取、選取,顧名思義,它表示從一個date類型中截取某一特定的部分,例如,選取年或月或日。

  例如有這樣一個表格:

      

  現在我要從表格myTable中選取time中年份為2018年的所有資料,可以這樣做,  

select title,play,time from myTable where extract(year from time) = 2018;
或者:
select title,play,to_char(time, ‘YYYY-MM-DD‘) as time from myTable where extract(year from time) = 2018

  結果顯然是都返回了(這裡只是做個示範)

 

  現在我要從表格myTable中選取time中月份為5的所有資料,操作為:

select title,play,time from myTable extract(month from time) = 5;
或者:
select title,play,to_char(time, ‘YYYY-MM-DD‘) as time from myTable where extract(month from time) = 5

  

  從表格myTable中選取time中日期為6的所有資料,操作為:

select title,play,time from myTable extract(day from time) = 6;
或者:
slect title,play,to_char(time, ‘YYYY-MM-DD‘) as time from myTable where extract(day from time) = 6;

  

  文法如下:extract(year|month|day|hour|minute|second from column_name) = value

Oracle日期格式化以及extract函數的使用

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.