基本上,我有一个数组,我需要用每个元素乘以一个数字,例如:

x float[1,2,3,4,5];
x := x * 10; --of course I get the error here

所以结果是:
{10,20,30,40,50}

最佳答案

您可以使用unnest->进行计算->array_agg

SELECT array_agg(unnest * 10)  FROM UNNEST('{1,2,3,4,5}' :: int[])

DBFiddle Demo
要确定可以添加的元素的顺序:
SELECT array_agg(unnest * 10 ORDER BY ordinality)
FROM UNNEST('{1,2,3,4,5}' :: int[] )WITH ORDINALITY

关于sql - 在SQL中,如何将数字与数组相乘,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49328654/

10-11 07:18