SQL:将 2 个语句与 2 个 SELECT 组合

时间:2021-03-10 02:30:43

标签: sql postgresql postgis

如何将这 2 个 SQL 语句合并为一个?

我想在这里替换值 shape

SELECT path[1] AS number, st_x(geom), st_y(geom) 
FROM st_dumppoints(shape)

由此:

SELECT shape 
FROM tableA 
WHERE id = 'test'

像这样:

SELECT path[1] AS number, st_x(geom), st_y(geom) 
FROM st_dumppoints(SELECT shape FROM tableA WHERE id = 'test')

1 个答案:

答案 0 :(得分:1)

只需在子选择周围添加一对额外的括号。在语法上,子查询需要括号,函数调用也需要,所以你最终得到

FROM st_dumppoints((SELECT shape FROM tableA WHERE id = 'test'))

请注意,如果子查询返回多于一行,该语句将导致错误。