Извлечение данных из поля JSON в Amazon Redshift - PullRequest
0 голосов
/ 28 марта 2019

Я пытаюсь извлечь некоторые данные из поля JSON в Redshift.

Ниже приведен пример данных, с которыми я работаю.

{"fileFormat":"excel","data":{"name":John,"age":24,"dateofbirth":1993,"Class":"Computer Science"}}

Я могу извлечь данные для первого уровня, а именно данные, соответствующие fileFormat и data как показано ниже:

select CONFIGURATION::JSON -> 'fileFormat' from table_name;

Я пытаюсь извлечь информацию из data, например name, age, dateofbirth

1 Ответ

2 голосов
/ 28 марта 2019

Вы можете использовать встроенную функцию Redshift json_extract_path_text
- https://docs.aws.amazon.com/redshift/latest/dg/JSON_EXTRACT_PATH_TEXT.html

SELECT
  json_extract_path_text(
    configuration,
      'data',
      'name'
  )
    AS name,
  json_extract_path_text(
    configuration,
      'data',
      'age'
  )
    AS age,
  etc
FROM
  yourTable
...