location स्ट्रिंग एक टेक्स्ट ऐरे के समान है। इसे text[] . में बदलें और अननेस्ट:
with my_data(id, location) as (
values
(1, '["Humboldt, TN","Medina, TN","Milan, TN"]')
)
select id, unnest(format('{%s}', trim(location, '[]'))::text[]) as location
from my_data
id | location
----+--------------
1 | Humboldt, TN
1 | Medina, TN
1 | Milan, TN
(3 rows)
या इससे भी आसान, स्ट्रिंग को jsonb . पर कास्ट करें और jsonb_array_elements_text() . का उपयोग करें :
with my_data(id, location) as (
values
(1, '["Humboldt, TN","Medina, TN","Milan, TN"]')
)
select id, jsonb_array_elements_text(location::jsonb) as location
from my_data