从SQL中的日期字符串中删除双引号

时间:2016-10-18 07:23:18

标签: google-bigquery

我正在使用JSON_EXTRACT()从json中检索日期。

我希望没有双引号的日期。

以下是我正在做的事情的例子:

JSON_EXTRACT(JSON_EXTRACT(events, "$.my_member"), "$.my_Number") as xyz

my_number将日期字符串保存为“2016-01-01 11:31:25”,我希望这不带双引号。

我尝试使用timestamp:

timestamp(JSON_EXTRACT(JSON_EXTRACT(events, "$.my_member"), "$.my_Number"))

但是它返回一个空值到xyz。

感谢。

2 个答案:

答案 0 :(得分:4)

尝试

JSON_EXTRACT_SCALAR(JSON_EXTRACT(events, "$.my_member"), "$.my_Number")

此外,您应该能够通过构建适当的JSON路径并仅使用JSON函数来进一步“优化”您的表达式。见下面的“提示”

SELECT 
  JSON_EXTRACT_SCALAR(
    '{"my_member":{"my_Number":"2016-01-01 11:31:25"}}', 
    "$.my_member.my_Number"
  )  

JSON functions

查看更多详情以及JSON_EXTRACT_SCALAR和JSON_EXTRACT之间的区别

答案 1 :(得分:0)

运行REPLACE

REPLACE(JSON_EXTRACT(JSON_EXTRACT(events, "$.my_member"), "$.my_Number"),"\"","") as xyz