如何对数据类型为text
的表中的列的值求和。我尝试使用以下代码,它给了我以下错误:
SELECT sum(periodo::INTEGER) as period
FROM informe_reposo
错误:没有完整的参数整数
答案 0 :(得分:0)
此代码:
SELECT sum(periodo::INTEGER) as period
FROM informe_reposo
假定periodo
可以毫无问题地转换为整数。不幸的是,Postgres没有安全的转换,但是您可以使用case
并接近:
SELECT sum(case when periodo ~ '^[-]?[0-9]{1,9}$' then periodo end)::INTEGER) as period
FROM informe_reposo;
我建议您注意那些失败的值-看看您应该怎么做。