Mysql 在SQL中显示完整日期的月份
我的数据库中有一列,其中填充了完整日期:(0000-00-00) 我需要将此日期显示为月份字符串(例如一月) 我在这里的SQL查询上有太多的选择: 1当月份为'01'='January'(我认为这是最好的选择,因为我可以随意更改字符串(以葡萄牙语为例,首字母大写)。我无法做到这一点,我尝试了子字符串,但日期不喜欢子字符串语句 2只需将日期显示为月份:Mysql 在SQL中显示完整日期的月份,mysql,sql,date,Mysql,Sql,Date,我的数据库中有一列,其中填充了完整日期:(0000-00-00) 我需要将此日期显示为月份字符串(例如一月) 我在这里的SQL查询上有太多的选择: 1当月份为'01'='January'(我认为这是最好的选择,因为我可以随意更改字符串(以葡萄牙语为例,首字母大写)。我无法做到这一点,我尝试了子字符串,但日期不喜欢子字符串语句 2只需将日期显示为月份: MONTH(DT_CANCEL) 但是,我需要显示字符串(一月),上面只显示输出01 在SQL查询中显示日期的完整月份名称的最佳选项是什么(以及
MONTH(DT_CANCEL)
但是,我需要显示字符串(一月),上面只显示输出01
在SQL查询中显示日期的完整月份名称的最佳选项是什么(以及如何显示)
使用MySQL。在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
您可以简单地使用MonthName:
SELECT MONTHNAME('2009-05-18');
这将在5月份输出
此处参考:
在mysql中,您可以使用monthname
SELECT MONTHNAME(DT_CANCEL) from your_table;
mysql:
对不起,MYSQL这对我来说很有效,现在,是否可以只显示前三个字母?Jan?而不是一月?我刚刚使用:LEFT(MONTHNAME(DT_CANCEL),3),worked,Thank!@Gauravsa SELECT MONTHNAME('2009-05-05');在这个语句中,如何决定月份。格式可能是“yyyy-mm-dd”或“yyyy-dd-mm”您可以使用str_to_date函数,然后使用monthname
select date_format('2018-12-01','%M'); /* prints December*/
select date_format('2018-12-01','%b'); /* prints Dec*/