在 postgresql 中用作表达式的子查询返回的多行
more than one row returned by a subquery used as an expression in postgresql
我在执行 sql 查询时遇到问题。是"more than one row returned by a subquery used as an expression in postgresql"。我该如何解决?
SELECT ST_AsText( ST_Intersection(
ST_GeomFromText('LINESTRING(100 100, 200 200, 500 400)'))),
(select my_linestrings FROM test1dd))
);
其中 select my_linestrings FROM test1dd
包括大约 10 行。
我想在 my_linestrings 的所有行和我刚创建的行 (ST_GeomFromText('LINESTRING(100 100, 200 200, 500 400)'))
之间获取交集
在 select
语句中使用子查询时,它只能 return 一条记录。也许您正在寻找这样的东西:
SELECT ST_AsText(
ST_Intersection(
ST_GeomFromText('LINESTRING(100 100, 200 200, 500 400)'), my_linestrings
)
)
FROM test1dd
根据 my_linestrings
的数据类型,您可能还需要在其周围使用 ST_GeomFromText
。
我在执行 sql 查询时遇到问题。是"more than one row returned by a subquery used as an expression in postgresql"。我该如何解决?
SELECT ST_AsText( ST_Intersection(
ST_GeomFromText('LINESTRING(100 100, 200 200, 500 400)'))),
(select my_linestrings FROM test1dd))
);
其中 select my_linestrings FROM test1dd
包括大约 10 行。
我想在 my_linestrings 的所有行和我刚创建的行 (ST_GeomFromText('LINESTRING(100 100, 200 200, 500 400)'))
之间获取交集在 select
语句中使用子查询时,它只能 return 一条记录。也许您正在寻找这样的东西:
SELECT ST_AsText(
ST_Intersection(
ST_GeomFromText('LINESTRING(100 100, 200 200, 500 400)'), my_linestrings
)
)
FROM test1dd
根据 my_linestrings
的数据类型,您可能还需要在其周围使用 ST_GeomFromText
。