【问题标题】:extract values from varchar in redshift sql从redshift sql中的varchar中提取值
【发布时间】: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

【问题讨论】:

    标签: sql json amazon-redshift


    【解决方案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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-11-10
      • 2012-07-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-27
      • 1970-01-01
      相关资源
      最近更新 更多