从redshift sql中的varchar中提取值
Posted
技术标签:
【中文标题】从redshift sql中的varchar中提取值【英文标题】:extract values from varchar in redshift sql 【发布时间】:2018-08-28 00:51:52 【问题描述】:从 varchar 中获取值的 SQL。我在 redshift 中有一个列元素作为 varchar,如下所示
Id elements
1 ["name":"email","value":"abc@gmail.com","nodeName":"INPUT","type":"text","name":"password","value":"*****","nodeName":"INPUT","type":"password","name":"checkbox","value":null,"nodeName":"INPUT","type":"checkbox"]
如何在上面的这个数组中选择值,即。 abc@123
【问题讨论】:
【参考方案1】:如果是MYSQL的数据库,你应该使用
json_extract
https://dev.mysql.com/doc/refman/8.0/en/json-search-functions.html
SELECT
ID,
json_extract(JSON_DATA, '$[0].value') AS MAIL
FROM JSON_TABLE;
结果:
ID MAIL
1 "abc@gmail.com"
演示:http://rextester.com/live/SQG30833
Redshift 应该可能使用 json_extract_path_text 函数 https://docs.aws.amazon.com/redshift/latest/dg/JSON_EXTRACT_PATH_TEXT.html
【讨论】:
以上是关于从redshift sql中的varchar中提取值的主要内容,如果未能解决你的问题,请参考以下文章
如何从 SQL 中的列值中提取特定部分(Redshift 平台)