从Oracle获取日期名称

时间:2010-12-21 08:32:19

标签: sql oracle date

如何从Oracle中的给定日期获取月份名称?

如果给定日期为'15-11-2010',那么我希望此日期为November

7 个答案:

答案 0 :(得分:65)

select to_char(sysdate, 'Month') from dual
你的例子中的

将是:

select to_char(to_date('15-11-2010', 'DD-MM-YYYY'), 'Month') from dual

答案 1 :(得分:15)

to_char(mydate, 'MONTH')将完成这项工作。

答案 2 :(得分:12)

试试这个,

select to_char(sysdate,'dd') from dual; -> 08 (date)
select to_char(sysdate,'mm') from dual; -> 02 (month in number)
select to_char(sysdate,'yyyy') from dual; -> 2013 (Full year)

答案 3 :(得分:12)

在Oracle(至少11g)数据库中:

如果你点击

select to_char(SYSDATE,'Month') from dual;

它为未格式化的月份名称提供空格,例如可以作为' May'给出。字符串May将包含空格。

为了格式化月份名称,即修剪空格,您需要

select to_char(SYSDATE,'fmMonth') from dual;

这将返回' May'。

答案 4 :(得分:8)

如果您尝试从字段中提取值,可以使用:

select extract(month from [field_name])
from [table_name]

您还可以在上面的“月份”提取值中插入日期或年份。

答案 5 :(得分:0)

尝试

select to_char(SYSDATE,'Month') from dual;

获取全名,然后尝试

select to_char(SYSDATE,'Mon') from dual;

缩写

您可以在此处找到更多选项:

https://www.techonthenet.com/oracle/functions/to_char.php

答案 6 :(得分:0)

如果您使用系统日期:

--Full month name :
select to_char(trunc(sysdate,'MONTH'),'MONTH') as month from dual; --MARCH    
--Short month name:
select to_char(trunc(sysdate,'MON'),'MON') as month from dual; --MAR
--Month number:
select to_char(trunc(sysdate,'MM'),'MM') as month from dual;  --03

如果您选择特定日期:

--Full month's name:
select to_char(trunc(to_date('11-03-2021','DD-MM-YYYY'),'MONTH'),'MONTH') as month from dual; --MARCH
--Short month's name:
select to_char(trunc(to_date('11-03-2021','DD-MM-YYYY'),'MON'),'MON') as month from dual; --MAR
--Month's number:
select to_char(trunc(to_date('11-03-2021','DD-MM-YYYY'),'MM'),'MM') as month from dual;  --03