【发布时间】:2020-02-27 19:25:25
【问题描述】:
我们有内容和国家/地区表格。 国家非常简单: country_name 列定义为字符串: 阿尔巴尼亚, 比利时, 中国, 丹麦等...
Content 是一个包含 50 万行的表格,其中包含各种数据,国家列定义为数组 text[]。那里的每个值都有多个国家级联,例如: {"丹麦,芬兰,法国,德国,爱尔兰,gb,意大利,荷兰,波兰,俄罗斯,西班牙,瑞典,澳大利亚,巴西,加拿大,中国,印度,印度尼西亚,日本,马来西亚,越南,墨西哥,"韩国" ,泰国,美国,新加坡,阿联酋"}
来自内部团队的更新是针对一千条记录,我们不确定国家/地区是否都拼写正确。因此,任务是与国家表中的 country_name 进行核对。
我正在做replace(replace(country_array::text,'{',''),'}','') as country_text 并考虑使用 UNPIVOT 来对照国家/地区表检查每一列。
有没有其他更简单的方法来确保 Content 表中的国家/地区数组具有来自国家/地区表的有效国家/地区名称?
谢谢
【问题讨论】:
标签: sql arrays postgresql unnest lateral-join