这个问题在这里已经有了答案:
What is the best way to escape non-format characters in Oracle's to_char?
(1 个回答)
7年前关闭。
我想以以下格式选择一些日期:
yyyydDOY
哪里
yyyy
是 4 位数的年份,DOY
是一年中的第几天 (1-366),而 d
是文字“d”。这是我尝试过的:SQL> select to_char(sysdate, 'YYYYdDDD') from dual;
TO_CHAR(
--------
20130713
显然这都是错误的。我想要的结果可以在命令行中找到:
$ date +'%Yd%j'
2013d071
最佳答案
首先,问题中的代码读作 DDDD
,函数解释为 DDD
(年份:071)后跟 D
(星期几:3)。
解决方案是用双引号 ( "
) 引用任何文字:
SQL> select to_char(sysdate, 'YYYY"d"DDD') from dual;
TO_CHAR(
--------
2013d071
见 Table 3-15 Datetime Format Elements想要查询更多的信息。
关于sql - 是否可以以 TO_CHAR(datetime) 格式插入文字字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15373153/