从redshift sql中的varchar中提取值

问题描述 投票:1回答:1

用于从varchar获取值的SQL。在redshift中将列元素作为varchar,如下所示

Id   elements
1 [{"name":"email","value":"[email protected]","nodeName":"INPUT","type":"text"},{"name":"password","value":"*****","nodeName":"INPUT","type":"password"},{"name":"checkbox","value":null,"nodeName":"INPUT","type":"checkbox"}]

如何在上面的数组中选择值,即。 ABC @ 123

sql json amazon-redshift
1个回答
0
投票

如果是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   "[email protected]"

但是:ぁzxswい

Redshift应该使用json_extract_path_text函数http://rextester.com/live/SQG30833

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.