如何从Oracle中的给定日期获取月份名称?
如果给定日期为'15-11-2010'
,那么我希望此日期为November
。
答案 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;
缩写
您可以在此处找到更多选项:
答案 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