我想解析一个具有以下类型的值的字段:
“戴夫·埃伯特建筑公司~伦诺克斯街139号~加利福尼亚州圣克鲁斯95060~~商务电话号码:(831)8183170.”
我想做一个查询,比如:
Update mytable set street = string_to_array(myfield,'~')[2]但是string_to_array没有“返回”一个数组,所以它不能以这种方式链接起来。但是,它返回的数组可以被其他接受数组的函数使用,比如array_upper(),所以我不知道为什么它不能工作。
我的解决方法是创建一个数组字段并执行以下操作:
Update mytable set myfield_array = string_to_array(myfield,'~')
Update mytable set street = myfield_array[2]有没有更直接的方法来做到这一点?但同样,如果我提取了许多不同的数组元素,也许不那么直接的方法性能更好,因为您只将字符串转换为数组一次?
发布于 2010-08-06 02:44:50
试试..。
Update mytable set street = (string_to_array(myfield,'~'))[2]你只需要这些括号。
发布于 2010-08-06 02:47:42
使用一些额外的():
Update mytable set street = (string_to_array(myfield,'~'))[2]https://stackoverflow.com/questions/3418023
复制相似问题