Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/79.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.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 如何将oracle中的日期时间戳转换为日期?_Sql_Database_Oracle_Datetime_Format - Fatal编程技术网

Sql 如何将oracle中的日期时间戳转换为日期?

Sql 如何将oracle中的日期时间戳转换为日期?,sql,database,oracle,datetime,format,Sql,Database,Oracle,Datetime,Format,我希望转换(使用Oracle)日期时间戳 [2018-01-25T00:00:00.000+00:00]至日期[2018-01-24]。我尝试了几种格式,但似乎找不到正确的格式来转换它。我不确定如何处理+00:00 提前感谢这取决于你真正的要求 如果您有一个真正的Oracle时间戳,并且您想要一个格式为'YYYY-MM-DD'的字符串,您可以使用来_char(): 如果您有一个ISO时间戳格式的字符串,并且希望得到一个字符串: select substr(col, 1, 10) as res f

我希望转换(使用Oracle)日期时间戳 [2018-01-25T00:00:00.000+00:00]至日期[2018-01-24]。我尝试了几种格式,但似乎找不到正确的格式来转换它。我不确定如何处理+00:00


提前感谢

这取决于你真正的要求

如果您有一个真正的Oracle
时间戳
,并且您想要一个格式为
'YYYY-MM-DD'
的字符串,您可以使用
来_char()

如果您有一个ISO时间戳格式的字符串,并且希望得到一个字符串:

select substr(col, 1, 10) as res from mytable
如果您有
时间戳
列,并且希望将时间部分设置为
00:00:00

select trunc(col) as res from mytable;

这将返回一个datatype
date

的值,该值尝试了to_char(col,'YYYY-MM-DD'),并引发了一个错误。更具体地说,它说的是“oracle.xdo.XDOException:java.sql.SQLException:ORA-01481:invalid number format model”。使用substr尝试了第二种方法,但结果显示的数据保持不变。我用trunc(col)尝试的第三个也呈现了相同的未更改的输出。@Dale:该列的数据类型是什么?@GMB-Ahh。。知道了。列名上的打字错误。第三个成功了。谢谢对第三个选项的评论是错误的;如果您使用的是
TRUNC
,而不是
时间戳
数据类型。仍然适用于我,但我非常感谢您的更正。
select trunc(col) as res from mytable;