我在PG 14 database中有一个表,其中一列包含numeric[]数组中的Infinity
值,如下所示:
SELECT id, factors_list FROM mytable ORDER BY id ASC LIMIT 2;
id | factors_list
---+-------------
1 | {Infinity,1,2.91825,2.2911174796669,1.58367915763394,1.96345397169765,1.41599564744287}
2 | {Infinity,1,1.0625,2.114,4.25,2.18021276595745}
此列的数据类型为ARRAY
(numeric[]),数组长度为变量(部分记录为NULL
):
SELECT column_name, data_type FROM information_schema.columns WHERE
table_name = 'mytable' AND column_name = 'factors_list';
column_name | data_type
----------------+-----------
factors_list | ARRAY
为了将这个数据库表恢复到一个旧的(〈14)PG数据库中,我需要用任何有效的数字替换所有Infinity
值,比如99999999
。
我怎样才能有效地做到这一点呢?(我大约有200'000行)
1条答案
按热度按时间k7fdbhmy1#
下面这个简单的update语句就可以完成这项工作: