Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何以这种格式获取当前年份_Sql_Oracle - Fatal编程技术网

Sql 如何以这种格式获取当前年份

Sql 如何以这种格式获取当前年份,sql,oracle,Sql,Oracle,to_char('01.01.2016') 我需要设置日期和月份始终为01.01。但是年份必须更改,这取决于系统日期年份。假设您需要以DD.MM.YYYY格式获取包含当前年份第一天的字符串,您可能需要: select to_char(trunc(sysdate, 'year'), 'dd.mm.yyyy') from dual trunc(sysdate,'year')给出一年中的第一天,而to_char将结果转换为所需格式的字符串。下面的代码返回日期:01,月份:01,年份:2017(仅取决

to_char('01.01.2016')


我需要设置日期和月份始终为01.01。但是年份必须更改,这取决于系统日期年份。

假设您需要以DD.MM.YYYY格式获取包含当前年份第一天的字符串,您可能需要:

select to_char(trunc(sysdate, 'year'), 'dd.mm.yyyy') from dual

trunc(sysdate,'year')
给出一年中的第一天,而
to_char
将结果转换为所需格式的字符串。

下面的代码返回日期:01,月份:01,年份:2017(仅取决于系统当前日期):


可以将常量值与转换为字符串的年份连接起来:

select '01.01.'||to_char(sysdate, 'YYYY')
from dual;
或者将常量放入格式字符串中:

select to_char(sysdate, '"01.01."YYYY')
from dual;
开始 选择“01.01”。| | to_char(trunc(sysdate,'yyyy'),'yyyy')进入:P86_P_DATUM_OD FROM dual;
结束

trunc(您的日期,'year')
@vkp:psst作为答案发布;)所以在我的例子中是:(to_char(trunc('01.01.','year'))?当我运行此命令时,出现错误。
到_char('01.01.2016')
没有意义,因为您正在尝试将字符串转换为字符串。如果我理解的很好,你需要得到今年的第一天,对吗?如果是,哪种类型(日期、字符串)?如果是字符串,则使用哪种格式?。请编辑您的问题以澄清您的需求是的,您是正确的,类型是日期。。以我写上dd.mm.yyyy时的格式。
select to_char(sysdate, '"01.01."YYYY')
from dual;
select to_char(trunc(sysdate, 'YYYY'), 'dd.mm.yyyy') from dual