我要添加到<cc:CustomControl1 Textaa="{Binding name}" />
中的查询TIMESTAMP
列中。
我知道BigQuery具有UTC
功能,但没有说明如何将其转换为CURRENT_TIMESTAMP()
。
在UTC
中,我会这样做:
MYSQL
BigQuery(仅适用于标准SQL)中的等效项是什么?
答案 0 :(得分:4)
TIMESTAMP
不存储或使用时区,如documentation中所述。进行解析时,它可能具有从保存时开始转换的时区。
时间戳表示绝对时间点,与任何时区或约定(例如夏令时)无关。
更具体地说
时间戳是从UTC 1970-01-01 00:00:00 UTC开始的偏移量,假设每分钟恰好有60秒。 seconds秒不表示为已存储时间戳的一部分。
查询CURRENT_TIMESTAMP()
时,时区偏移量也为零,从而明确表示它处于UTC。因此,这是基于此的UTC时间戳。
使用它可能会出现问题,因为它不在UTC中存储任何内容,并且它并不关心leap秒。规范说:
Le秒仅可通过测量实际时间的功能来观察。在这些功能中,如果有a秒,则有可能跳过或重复时间戳秒。
因此,如果需要这些leap秒,可能需要在特定时区使用另一种数据类型来处理leap秒。
还说明了转换:
如果您输入的值在秒字段中使用“:60”表示a秒,则在转换为时间戳值时不会保留该leap秒。取而代之的是,该值将在下一分钟的秒字段中解释为带有“:00”的时间戳。