如何使用数据块 sql 查询 json 列?
How to query json column using databricks sql?
查询是
SELECT *
FROM companies c
where c.urls ->> 'Website' = '';
这是公司 table。
网址
{'Website': '', 'Twitter': ''}
{'Website': 'www.google.com', 'Twitter: ''}
我正在查询公司 table 的 urls 列中网站为空字符串的行。但是,此查询在 dattabricks sql 中出错:
mismatched input '->' expecting {<EOF>, ';'}(line 3, pos 13)
有谁知道如何查询数据块 sql 中的 json 列?
查看 Databricks 文档中的以下页面:Query semi-structured data in SQL。
如果列的内容是 JSON 作为字符串,那么您可以使用此语法:<column-name>:<extraction-path>
。例如:
select * from companies c
where c.urls:Website = ''
如果列的内容是一个结构,那么你可以使用这个语法:<column-name>:<nested-field>
:
SELECT *
FROM companies c
where c.urls.Website = '';
查询是
SELECT *
FROM companies c
where c.urls ->> 'Website' = '';
这是公司 table。
网址 |
---|
{'Website': '', 'Twitter': ''} |
{'Website': 'www.google.com', 'Twitter: ''} |
我正在查询公司 table 的 urls 列中网站为空字符串的行。但是,此查询在 dattabricks sql 中出错:
mismatched input '->' expecting {<EOF>, ';'}(line 3, pos 13)
有谁知道如何查询数据块 sql 中的 json 列?
查看 Databricks 文档中的以下页面:Query semi-structured data in SQL。
如果列的内容是 JSON 作为字符串,那么您可以使用此语法:<column-name>:<extraction-path>
。例如:
select * from companies c
where c.urls:Website = ''
如果列的内容是一个结构,那么你可以使用这个语法:<column-name>:<nested-field>
:
SELECT *
FROM companies c
where c.urls.Website = '';