我对MySQL的以下查询:
SELECT COALESCE(
TRIM(BOTH '"' FROM JSON_EXTRACT(fb.p_dataforanalytics,'$.gender')),
TRIM(BOTH '"' FROM JSON_EXTRACT(g.p_dataforanalytics,'$.gender'))
) as chosen_gender
FROM ...
这适用于MySQL,但它不工作的BigQuery:
语法错误:预期“)”,但得到的字符串字面'“
有一些问题,TRIM / JSON_EXTRACT。
我怎样才能在BigQuery中做到这一点?
假设到单个标值gender
关键点,然后BigQuery的JSON_EXTRACT_SCALAR
功能可能是什么您这里需要:
SELECT
COALESCE(JSON_EXTRACT_SCALAR(fb.p_dataforanalytics, "$.gender"),
JSON_EXTRACT_SCALAR(g.p_dataforanalytics, "$.gender")) AS chosen_gender
FROM yourTable;
从documentation,应该没有必要修剪双引号,因为他们不会在输出显示。