简体   繁体   English

从UTC中的日期和时间获取时间戳

[英]Get timestamp from date & time in UTC

I have table that have date and time with timezone. 我有具有日期和时间与时区的表。

date_time_table
+------------+--------------+
|   date_t   |   time_tz    |
+------------+--------------+
| 2016-05-13 | 23:00:00 -02 |
| 2016-05-14 | 13:00:00 +06 |
+------------+--------------+

After that I run SQL for query 'UTC' time 之后,我运行SQL查询“ UTC”时间

SELECT timetz AT TIME ZONE 'UTC' FROM date_time_tz

The result is: 结果是:

+--------------+
|   time_tz    |
+--------------+
| 01:00:00 +00 |
| 07:00:00 +00 |
+--------------+

Can I write SQL combined date_t with time_tz for calculate with date too? 我也可以编写将date_t与time_tz组合在一起的SQL以便与日期一起计算吗?

The result that I expect is: 我期望的结果是:

+------------+------------+
|      date_time_tz       |
+------------+------------+
| 2016-05-14 01:00:00 +00 |
| 2016-05-14 07:00:00 +00 |
+------------+------------+

I try with : 我尝试:

SELECT concat(date_t , ' ' ,time_tz) AT TIME ZONE 'UTC' FROM date_time_table

But it does not work. 但这行不通。

If the columns are of date and time types: 如果列是datetime类型:

select (current_date + current_time) at time zone 'UTC';
          timezone          
----------------------------
 2016-07-12 12:06:00.239396

If those columns are text: 如果这些列是文本:

select ('2016-01-01'::date + '23:00:00 -02'::timetz) at time zone 'UTC';
      timezone       
---------------------
 2016-01-02 01:00:00
SELECT concat(date_t , ' ' ,time_tz)::timestamp AT TIME ZONE 'UTC' FROM date_time_table

尝试像这样铸造

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM