2016-09-16 37 views
1

运行在PostGIS扩展Postgres的:尝试过程中选择要更改的列的数据类型为TABLE语句Postgres的过程中选择更改的数据类型为声明

在munsummary表中的列sum_popint是双,我想把它变成一个整数在选择语句期间。我知道我可以在使用update/alter语句的select into语句之前或之后将列数据类型更改为整数,但是我希望在select语句中执行此操作。

SELECT county, 
     SUM(sum_popint) AS residentialpopulation, 
     st_union(geom) 
INTO countysummary 
FROM munsummary 
GROUP BY county; 

回答

2

你在找什么做的是CAST它为整数。这需要的CAST (expression AS type);

因此,在你选择的形式,尝试:

SELECT county, 
     CAST(SUM(sum_popint) as INTEGER) AS residentialpopulation, 
     st_union(geom) 
INTO countysummary 
FROM munsummary 
GROUP BY county; 
2

您也可以使用简写语法SUM(sum_popint)::int

SELECT county, 
    SUM(sum_popint)::int AS residentialpopulation, 
    st_union(geom) 
INTO countysummary 
FROM munsummary 
GROUP BY county 
+0

我用速记预期,但想通CAST可能作为它的ansi sql更有用。 – Doon