我有一个包含多个日期的日期列,我需要查询将日期显示为
- January 1st of 1999 -
用破折号。
有人可以帮忙吗?
谢谢
您可以将固定值放在日期格式掩码中,方法是用双引号将它们括起来:
with t as (select date '1999-01-01' as dt from dual)
select to_char(dt, 'fm"-" Month ddth "of" YYYY "-"')
from t;
TO_CHAR(DT,'FM"-"MONTHDDTH"OF"YYYY"-"')
---------------------------------------
- January 1st of 1999 -
或显示今天的日期:
select to_char(sysdate, 'fm"-" Month ddth "of" YYYY "-"') from dual;
TO_CHAR(SYSDATE,'FM"-"MONTHDDTH"OF"YYYY"-"')
-----------------------------------------------------
- October 2nd of 2013 -
“fm
填充模式”修饰符停止用空格填充月份名称,并删除您通常从dd
.
双引号实际上在破折号周围是可选的,因为它们无论如何都是允许的(也'fm- Month ddth "of" YYYY -'
可以正常工作),但在这种情况下,我可能无论如何都会引用它们以表明它们不寻常。