在 alter table 中将 json 转换为文本 []
Convert json to text[] in alter table
ALTER TABLE students
ALTER COLUMN hobbies type text[] using hobbies::text[];
显示 json 无法转换为 text[]
的错误。
你需要一个辅助函数来做到这一点。
create function json_to_array(json) returns text[] language sql as $$
select array_agg(x) from json_array_elements_text() f(x)
$$;
ALTER TABLE students
ALTER COLUMN hobbies type text[] using json_to_array(hobbies);
ALTER TABLE students
ALTER COLUMN hobbies type text[] using hobbies::text[];
显示 json 无法转换为 text[]
的错误。
你需要一个辅助函数来做到这一点。
create function json_to_array(json) returns text[] language sql as $$
select array_agg(x) from json_array_elements_text() f(x)
$$;
ALTER TABLE students
ALTER COLUMN hobbies type text[] using json_to_array(hobbies);