- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
select sysdate from dual;
15-NOV-2018 23:09:31
select cast(sysdate as TIMESTAMP) from dual;
15-NOV-18 11.07.47.000000000 PM
select sys_extract_utc(cast(sysdate as TIMESTAMP)) from dual;
15-NOV-18 05.40.35.000000000 PM
select systimestamp from dual;
15-NOV-18 11.11.16.345959000 PM -08:00
select sys_extract_utc(systimestamp) from dual;
16-NOV-18 07.08.49.772214000 AM
select cast(sysdate as TIMESTAMP) at time zone 'UTC' from dual;
15-NOV-18 05.48.11.000000000 PM UTC
sys_extract_utc(cast(sysdate as TIMESTAMP))
不同于
sys_extract_utc(systimestamp)
在我的数据库中?
sys_extract_utc(systimestamp)
给出的时间是正确的UTC时间,顺便说一句。
sys_extract_utc
或使用
at time zone 'UTC'
),这可能是因为与 sysdate 的上述转换不起作用的相同原因。
SELECT DBTIMEZONE FROM DUAL;
+00:00
最佳答案
功能 SYS_EXTRACT_UTC
仅适用于 TIMESTAMP WITH TIME ZONE
或 TIMESTAMP WITH LOCAL TIME ZONE
值。 DATE
和 TIMESTAMP
不包含任何时区信息,所以 SYS_EXTRACT_UTC
在DATE
上基本没用或 TIMESTAMP
值。
当你跑
SYS_EXTRACT_UTC(CAST(SYSDATE AS TIMESTAMP))
SYS_EXTRACT_UTC(FROM_TZ(CAST(SYSDATE AS TIMESTAMP), SESSIONTIMEZONE))
SYSDATE
和
SYSTIMESTAMP
返回数据库服务器操作系统时区的时间(
NOT
DBTIMEZONE
)而您的命令使用当前 session
SESSIONTIMEZONE
DATE
值那么你可以使用这个:
SYS_EXTRACT_UTC(FROM_TZ(CAST(SYSDATE AS TIMESTAMP), TO_CHAR(SYSTIMESTAMP, 'tzr')))
TO_CHAR(SYSTIMESTAMP, 'tzr')
为您提供数据库服务器操作系统的时区。
Europe/Zurich
这样的区域。但在
+01:00
之间每年更改两次和
+02:00
由于夏令时。对于
SYSDATE
和
SYSTIMESTAMP
这没关系,因为
当前 UTC 偏移量始终正确。但例如,如果我的表包含一个 DATE 值
2018-08-01 12:00:00
那么如果您在 11 月的今天从上面运行查询,您将得到错误的结果。
SYS_EXTRACT_UTC(FROM_TZ(CAST({arbitrary DATE value} AS TIMESTAMP), 'Europe/Zurich'))
关于sql - 将 DATE 转换为 UTC 时间的 DATE : sys_extract_utc behaving differently for sysdate and systimestamp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53333171/
我需要运行插入查询,其中一列必须存储时间戳。该时间戳应该是oracle数据库在插入时生成的systemdate。我正在运行类似于此的准备好的声明: insert into table_name (co
我有一个 Oracle 表,其中包含以下列定义: COLUMN_NAME : RESERVATIONDATE DATA_TYPE : TIMESTAMP(6) NULLAB
我试图了解数据库上设置的时间戳中的字节的含义。如何计算它们以生成更具可读性的日期? 我使用以下查询来获取我需要的数据: SELECT systimestamp ,DUMP (systimest
今天我遇到了一个我无法解释的情况,希望你能。 归结为: 比方说 function sleep() return number;循环 10 秒,然后返回 1。 一个 sql 查询,如 SELECT sy
您能否提供存储函数的实现以获取当前 systimestamp 毫秒。 我可以用的东西,比如 select current_time_ms from dual; 并获取当前时间与世界标准时间 1970
这个问题在这里已经有了答案: Get current date in cassandra cql select (2 个回答) 4年前关闭。 如何使用 DevCenter 在 Cassandra 上获
有人知道如何找到 Oracle systimestamp 的 SQL Server 等效项吗? SYSDATETIMEOFFSET() 是我能找到的最接近的匹配... 最佳答案 据我所知 SYSDAT
我有一个简单的问题...为什么下面的代码不起作用? JDK 版本:1.8.0_92 Oracle 数据库版本:11.2.0.1.0 Oracle JDBC 驱动程序:ojdbc6.jar ---> 我
select sysdate from dual; 15-NOV-2018 23:09:31 select cast(sysdate as TIMESTAMP) from dual; 15-NO
我是一名优秀的程序员,十分优秀!