在我的表中,我有一个名为facebook的列,其中包含类型为text []的数组。例如:
{{total_count,26861},{comment_count,94},{comment_plugin_count,0},{share_count,26631},{reaction_count,136}}
我正在使用带有数据表的数据库,当我试图通过facebook对我的表进行排序时,我得到了这个:
这是错的。所以我试图从这个数组中只得到total_count作为数值。现在我有了这个:
regexp_matches(array_to_string(facebook, ' '), '(\d+).*')
但这会返回数组,例如:
所以我添加了:: numeric
regexp_matches(array_to_string(facebook, ' '), '(\d+).*')::numeric
但是我收到了一个错误:
无法将text text []转换为数字
任何想法如何解决?
答案 0 :(得分:2)
无法将text text []转换为数字
你需要施展到numeric[]
:
regexp_matches(array_to_string(facebook, ' '), '(\d+).*')::numeric[]