我正在尝试使用以下方法将Timestamp数据类型列转换为Date数据类型:
bq query -q --destination_table = NEW_DATE_TABLE --replace"SELECT DATE(CURR_DT)AS CURR_DT from TEST.DATE_TABLE"
新表将列显示为STRING而不是日期.有没有办法将时间戳转换为日期数据类型.
Mos*_*sky 15
如果您使用标准 SQL,则可以执行以下操作:
SELECT * REPLACE(EXTRACT(DATE FROM curr_dt)) AS curr_dt FROM test.date_table
Run Code Online (Sandbox Code Playgroud)
如果 curr_dt 是重复字段,那么解决方案将如下所示:
SELECT * REPLACE(
ARRAY(
SELECT EXTRACT(DATE FROM curr_dt) FROM t.curr_dt
) AS curr_dt)
FROM test.date_table t
Run Code Online (Sandbox Code Playgroud)
考虑下面!
适用于旧版和标准SQL
SELECT CAST(DATE(CURR_DT) AS DATE) AS CURR_DT FROM TEST.DATE_TABLE
Run Code Online (Sandbox Code Playgroud)
添加以发表评论
尝试下面 - 正如我上面提到的 - 它适用于Legacy和Standard
SELECT CAST(DATE(CURR_DT) AS DATE) AS CURR_DT
FROM (SELECT CURRENT_TIMESTAMP() AS CURR_DT)
Run Code Online (Sandbox Code Playgroud)
如果您有兴趣使用Legacy SQL处理案例 - 提供有关CURR_DT字段的更多详细信息
| 归档时间: |
|
| 查看次数: |
21578 次 |
| 最近记录: |