SCN到TimeStamp - 表达错误?

问题描述 投票:1回答:2

我有SCN:

SELECT TIMESTAMP_TO_SCN(SYSTIMESTAMP) SCN FROM DUAL;

我可以把它转换为时间戳:

SELECT SCN_TO_TIMESTAMP(6480157) FROM DUAL;

当我想混合这两个选择我得到错误:

SELECT SCN_TO_TIMESTAMP(SELECT TIMESTAMP_TO_SCN(SYSTIMESTAMP) FROM DUAL) FROM DUAL;

ORA-00936: missing expression

oracle time timestamp oracle12c systimestamp
2个回答
4
投票

请用

SELECT SCN_TO_TIMESTAMP(TIMESTAMP_TO_SCN(SYSTIMESTAMP)) FROM DUAL;

2
投票

@ F.Madsen有正确和最简单的答案,但只是为了说明,你可以按照你的逻辑得到结果:

SELECT SCN_TO_TIMESTAMP(SCN) FROM
(
  SELECT (TIMESTAMP_TO_SCN(SYSTIMESTAMP)) SCN FROM DUAL
);
© www.soinside.com 2019 - 2024. All rights reserved.