我有一个PostgreSQL表,其中有一列包含字符串数组。该行具有一些唯一的数组字符串或者一些重复的字符串。如果存在,我想从每行中删除重复的字符串。
我尝试过一些查询,但没能实现。
以下是表格:
veh_id | vehicle_types
--------+----------------------------------------
1 | {"byd_tang","volt","viper","laferrari"}
2 | {"volt","viper"}
3 | {"byd_tang","sonata","jaguarxf"}
4 | {"swift","teslax","mirai"}
5 | {"volt","viper"}
6 | {"viper","ferrariff","bmwi8","viper"}
7 | {"ferrariff","viper","viper","volt"}
我期望得到以下输出:
veh_id | vehicle_types
--------+----------------------------------------
1 | {"byd_tang","volt","viper","laferrari"}
2 | {"volt","viper"}
3 | {"byd_tang","sonata","jaguarxf"}
4 | {"swift","teslax","mirai"}
5 | {"volt","viper"}
6 | {"viper","ferrariff","bmwi8"}
7 | {"ferrariff","viper","volt"}
language sql
函数,该函数在输入数组上使用 unnest 和 distinct,会更加高效。 - user330315