BigQuery:如何从以秒为单位的时间戳中获取日期时间?

时间:2019-03-04 09:40:44

标签: google-bigquery

我的解决方法是

SELECT TIMESTAMP_ADD('1970-01-01', INTERVAL 1551692341 SECOND) AS ts

是否还有其他更易读的方式将Unix时间戳转换为日期时间?

2 个答案:

答案 0 :(得分:1)

是的。

  

TIMESTAMP_SECONDS(int64_expression)。描述。口译   int64_expression为自1970-01-01 00:00:00以来的秒数   UTC

示例:

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type='text' id='qty' value="1" />
<button class="qtyButton">1</button>
<button class="qtyButton">2</button>
<button class="qtyButton">3</button>
<hr/>
<button id='clickme'>click me</button>

返回

SELECT timestamp_seconds(1551692341)

答案 1 :(得分:0)

我很好奇,为什么您想要比您已经拥有的更简单的东西。

或者,BQ支持UDF (user defined function),其中您可以创建与JS代码段一起嵌入的TEMP函数,以解析历元值,并以任何适合数据的格式将其转换为所需的日期值。

在大多数情况下,最好在应用程序层进行所有此类格式设置和值转换,而不在数据库层创建定制实用程序。

无论如何,您可能想快速浏览here