Sql 尝试使用postgis创建具有两条平行线的管线

Sql 尝试使用postgis创建具有两条平行线的管线,sql,postgresql,postgis,qgis,Sql,Postgresql,Postgis,Qgis,所以我刚开始使用SQL和PostGIS。对于本练习,我需要创建一个带有主键和几何体字段的表 Insert into paradezug Values (1,ST_Transform( st_linefromtext('linestring(13.40044325726135 52.51884104088853 , 13.40109986093854 52.51827594967714)',4326),25833)); Insert into paradezug Values (2,ST_Tr

所以我刚开始使用SQL和PostGIS。对于本练习,我需要创建一个带有主键和几何体字段的表


Insert into paradezug Values (1,ST_Transform( st_linefromtext('linestring(13.40044325726135 52.51884104088853 , 13.40109986093854 52.51827594967714)',4326),25833));

Insert into paradezug Values (2,ST_Transform( st_linefromtext('LineString(13.40109986093854 52.51827594967714 , 13.39917356833286 52.51769543984515)',4326),25833));

Insert into paradezug Values (3,ST_Transform( st_linefromtext('linestring(13.39917356833286 52.51769543984515 , 13.37837611723877 52.5162977964313)',4326),25833));
这很有效,为我提供了在QGIS中导入和查看的路径

现在我必须在左边和右边加一条线,偏移250米

我试过:

SELECT ST_AsText(ST_OffsetCurve(geom,
    -250, 'quad_segs=4 join=round')) As notsocurvy
    FROM ST_GeomFromText(
'linestring(13.40044325726135 52.51884104088853 , 13.40109986093854 52.51827594967714)') As geom;

SELECT ST_AsText(ST_OffsetCurve(geom,
    -250, 'quad_segs=4 join=round')) As notsocurvy
    FROM ST_GeomFromText(
'LineString(13.40109986093854 52.51827594967714 , 13.39917356833286 52.51769543984515)') As geom;

SELECT ST_AsText(ST_OffsetCurve(geom,
    -250, 'quad_segs=4 join=round')) As notsocurvy
    FROM ST_GeomFromText(
'linestring(13.39917356833286 52.51769543984515 , 13.37837611723877 52.5162977964313)') As geom;
这带来了一些成功。但由于我是SQL新手,我不太明白如何从这里开始

任何帮助都将不胜感激

因此ST_OffsetCurve将输出从现有几何体派生的新几何体

首先使用列名计算曲线偏移,该列来自手动创建的几何图形:

选择ST_AsTextST_OffsetCurvegeom, -250,“四段=四段=四段连接=四段”作为notsocurvy 来自ST_GeomFromText “linestring13.39917356833286 52.51769543984515、13.37837611723877 52.5162977964313”作为geom; 如果要从表中导出曲线,可以在此处引用:

选择ST_AsTextST_OffsetCurvegeom, -250,“四段=四段=四段连接=四段”作为notsocurvy 来自paradezug; 从这里开始,一个选项是将曲线偏移添加到同一个表中。id应该由序列搜索或标识填充,这样您就可以在insert语句中省略它。此外,您不需要插入文本,只需要插入几何体,因此让我们删除st_asText函数:

插入paradezug geom 选择ST_OffsetCurvegeom, -250,“四段=四段=圆形”作为几何图形 来自paradezug;
现在,您可能需要跟踪哪条线是中心线,并在运行此查询之前确保偏移线不存在

谢谢大家!!是否可以使用select ROW_NUMBER仅从表中选择前两行?@Katerkaskade暂时忘记ROW_NUMBER,大多数时候不需要它。要选择两个第一行id 1和2,请添加where子句where id