[英]Extract key value pair from json column in redshift
我有一個表mytable
,它以JSON
字符串的形式存儲列,其中包含多個鍵值對。 現在,我只想提取與一個鍵對應的特定值。 存儲這些字符串的列是 varchar 數據類型,並創建為:
insert into mytable(empid, json_column) values (1,'{"FIRST_NAME":"TOM","LAST_NAME":"JENKINS", "DATE_OF_JOINING":"2021-06-10", "SALARY":"1000" }').
如您所見, json_column
是通過僅插入一個字符串來創建的。 現在,我想做類似的事情:
select json_column.FIRST_NAME from mytable
我只想提取與鍵FIRST_NAME
對應的value
。 雖然我的實際表比這個示例復雜得多,但我無法將這些JSON
鍵本身轉換為不同的列。 但是,這個例子清楚地說明了我的問題。 這需要通過 Redshift 完成,請幫助我提出任何寶貴的建議。
使用 Redshift 的 function json_extract_path_text
可以輕松解決這個問題,如下:
select json_extract_path_text(json_column, 'FIRST_NAME') from mytable;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.