将YYYY-MM-DDT00:00:00.000-08:00类型的时间戳转换为YYYYMMDD

时间:2016-09-07 03:56:56

标签: sql date datetime oracle10g

我有数据类型varchar2的列,例如它以thi格式存储值(2002-01-11T00:00:00.000-08:00)。 但是我希望以YYYYMMDD这种类型的格式获得值。

我只想在SQL(使用SQL开发人员)语句中查询此内容。

我的NLS的日期格式为DD-MON-RR,时间戳格式为DD-MON-RR HH.MI.SSXFF AM

请有人帮助我。

提前致谢。

3 个答案:

答案 0 :(得分:0)

使用FROM_UNIXTIME

SELECT
  FROM_UNIXTIME(timestamp_field) AS formatted_date
FROM
  tablename;

答案 1 :(得分:0)

SELECT CONVERT(VARCHAR(10),GETDATE(),112)AS [YYYYMMDD]

答案 2 :(得分:0)

select to_char(
  to_date(
    substr('2002-01-11T00:00:00.000-08:00',1,10)
    ,'YYYY-MM-DD')
  ,'YYYYMMDD')
from dual;

20020111