簡體   English   中英

Oracle - 從 sysdate 中提取上個月的名稱

[英]Oracle - Extract last month name from sysdate

如果我記錄中的日期是“04-NOV-2021”,例如,我想顯示“October”。

select extract(MONTH FROM add_months(sysdate,-1)) from dual;

該代碼將為我提供 10 月的“10”,但如何將其格式化為“10 月”?

一種選擇是將to_char與正確的nls_language一起使用。

SQL>  select to_char(sysdate,'Month', 'nls_language=''english''' ) from dual ;

TO_CHAR(SYSDATE,'MONTH','NLS_LANGUAG
------------------------------------
November

SQL>

在你的情況下

SQL> select to_char(to_date(to_char(add_months(sysdate,-1))),'Month', 'nls_language=''english''' ) from dual ;

TO_CHAR(TO_DATE(TO_CHAR(ADD_MONTHS(S
------------------------------------
October

或者

SQL> select to_char(add_months(sysdate,-1), 'fmMonth', 'nls_language="english"')  from dual ;

TO_CHAR(ADD_MONTHS(SYSDATE,-1),'FMMO
------------------------------------
October

SQL>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM