我在表中有一些多边形,我想将它们转换成一个区域并将结果添加到一行中。
INSERT INTO citydb.surfaces(foot_p)
SELECT st_area(geom)
FROM citydb.surfaces
WHERE class_id = 33;
它返回以下内容:
INSERT 0 110521
Query returned successfully in 677 msec.
但是该列为空。
答案 0 :(得分:1)
似乎您想为表的现有行填充新列,但是您正在做的是添加新行,其中除foot_p
以外的所有列(以及带有{{ 1}}值)将为NULL。
您可能打算这样做
DEFAULT
这将修改现有行。
此更新将使您的表大大膨胀,因此请考虑运行
UPDATE citydb.surfaces
SET foot_p = st_area(geom);
之后。