Google bigquery Bigquery Datetime时间戳函数

Google bigquery Bigquery Datetime时间戳函数,google-bigquery,Google Bigquery,有人能给我解释一下下面的代码吗 DATETIME(TIMESTAMP_SECONDS(created_time_epoch), "America/Texas"), created_time_epoch, DATE(TIMESTAMP_SECONDS(pickup_time_epoch)), 如何使用DATA PREP将这些更改合并到GCP?您正在尝试将某个SQL查询中的函数复制到某些DATA PREP配方中 从BigQuery的角度,我可以解释代码在做什么,然后我认为您可以找出使用DataPr

有人能给我解释一下下面的代码吗

DATETIME(TIMESTAMP_SECONDS(created_time_epoch), "America/Texas"),
created_time_epoch,
DATE(TIMESTAMP_SECONDS(pickup_time_epoch)),

如何使用DATA PREP将这些更改合并到GCP?

您正在尝试将某个SQL查询中的函数复制到某些DATA PREP配方中

从BigQuery的角度,我可以解释代码在做什么,然后我认为您可以找出使用DataPrep复制它的方法,因为我对它不是特别熟悉

1-
TIMESTAMP_SECONDS(x)
x
的值,该值假定是表示中时间戳的整数(例如1586872288),并将其转换为时间戳('2020-04-14 13:51:28+00:00)

2-
DATETIME(y)
将您的
y
转换为。可以将其视为表示时间戳的一种稍微不同的方式

这两件事合在一起做的是将你的
创建的\u time\u epoch
转换成它在美国/德克萨斯时区的等效日期时间

3-类似地,
DATE(z)
将整数转换为日期字段

同样,将您的
picku\u time\u epoch
整数转换为日期

非常简单的东西

至于如何在DataPrep中实现它,基本上就是您所需要的。 只需将
创建的\u time\u epoch
拾取\u time\u epoch
转换为使用UNIXTIMEFORMAT和想要使用的格式所需的内容

这可能是一个很好的等价性例子


DATE(TIMESTAMP\u SECONDS(picku\u time\u epoch))
[SQL]=
unixtimeformat(picku\u time\u epoch,'yyyy-MM-dd')
[DataPrep]

Francesco,我已经完成了将整数转换为日期的部分工作。主要问题是时区如何将其引入UTC,而不是我的时区。有没有办法让我看到自己的时区,dataprep正在运行?对于ex 1586050147-2020-04-05·01:04:000,前一个数字转换为日期,但现在我不知道它是哪个时区,我可以转换为UTC,并进一步转换为我自己的时区。非常感谢您的帮助所有UNIX时间戳都使用UTC mate,这意味着您的所有日期、日期时间和时间戳都已使用UTC。现在,若要将其更改为您自己的时区,您可以使用DATE_ADD或类似的功能。我不明白您为什么要共享这些结果,在这个问题上您还有什么需要帮助的吗?。对于超出此范围的任何额外步骤,我建议您创建一个新问题并解决此问题。