[英]Show month of a full date in SQL
我的數據庫中有一個列,其中填充了完整日期:(0000-00-00)我需要將此日期顯示為月份字符串(例如,1月)。
我在SQL QUERY上有太多選擇:
1當月份為'01'='1月'時創建一個案例(我認為這是最好的選擇,因為我可以隨后更改字符串但是我想要(例如葡萄牙語,首字母大寫)。我無法這樣做,我嘗試了substring,但是日期不喜歡substring語句。
2只顯示日期為月份:
MONTH(DT_CANCEL)
但是,我需要顯示字符串(1月)和上面只顯示01
我可以在SQL QUERY中顯示日期的完整月份名稱的最佳選項(以及如何)是什么?
使用MySQL。
您只需使用MonthName:
SELECT MONTHNAME('2009-05-18');
這將輸出May。
參考這里: https : //www.w3resource.com/mysql/date-and-time-functions/mysql-monthname-function.php
在mysql中,您可以使用monthname
SELECT MONTHNAME(DT_CANCEL) from your_table;
MySQL的:
select date_format('2018-12-01','%M'); /* prints December*/
select date_format('2018-12-01','%b'); /* prints Dec*/
在Oracle中,使用TO_CHAR:
select TO_CHAR(SYSDATE, 'Month') FROM dual;
December
如果您使用的是MS SQL Server,則無需編寫Case語句,請嘗試以下操作:
SET LANGUAGE Portuguese
SELECT UPPER(LEFT(DATENAME(month, getdate()),1))+LOWER(SUBSTRING(DATENAME(month,
getdate()),2,LEN(DATENAME(month, getdate()))))
如果要重置服務器的語言,可以通過運行以下腳本來查看別名列表:
SELECT * FROM sys.syslanguages
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.