合并:ST_Union

文档上是这样说的:
SQL:postgresql中合并多个geom数据ST_Union以及比较两个geom数据是否相同ST_Equals_css
经过亲身实践,比较两个geom是很好用的,可是多个的时候,看网上说使用数组的形式 [geom1,geom2,geom3] ,可是并没有成功。。。于是只能反复合并两个,实现了合并多个。

代码:
合并两个

SELECT
	ST_Union ( ( SELECT geom FROM department_info WHERE node_name = '陕西一队' ), ( SELECT geom FROM department_info WHERE node_name = '陕西二队' ) )

SQL:postgresql中合并多个geom数据ST_Union以及比较两个geom数据是否相同ST_Equals_css_02
合并多个

SELECT
	ST_Union (
	( SELECT ST_Union ( ( SELECT geom FROM department_info WHERE node_name = '陕西一队' ), ( SELECT geom FROM department_info WHERE node_name = '陕西二队' ) ) ),
	( SELECT geom FROM department_info WHERE node_name = '陕西三队' ) 
	)

SQL:postgresql中合并多个geom数据ST_Union以及比较两个geom数据是否相同ST_Equals_css_03

SELECT
	ST_Union (
	(
SELECT
	ST_Union (
	(
SELECT
	ST_Union (
	(
SELECT
	ST_Union (
	(
SELECT
	ST_Union (
	( SELECT ST_Union ( ( SELECT geom FROM department_info WHERE id = '中石油西部管道乌鲁木齐输油气分公司' ), ( SELECT geom FROM department_info WHERE id = '中石油西部管道酒泉输油气分公司' ) ) ),
	( SELECT geom FROM department_info WHERE id = '中石油西部管道甘肃输油气分公司' ) 
	) 
	),
	( SELECT geom FROM department_info WHERE id = '中石油西部管道塔里木输油气分公司' ) 
	) 
	),
	( SELECT geom FROM department_info WHERE id = '中石油西部管道兰州输气分公司' ) 
	) 
	),
	( SELECT geom FROM department_info WHERE id = '中石油西部管道新疆输油气分公司' ) 
	) 
	),
	( SELECT geom FROM department_info WHERE id = '中石油西部管道独山子输油气分公司' ) 
	)

比较是否相同:ST_Equals

SQL:postgresql中合并多个geom数据ST_Union以及比较两个geom数据是否相同ST_Equals_css_04
代码:

SELECT
	ST_Equals (
	(
SELECT
	ST_Union (
	( SELECT ST_Union ( ( SELECT geom FROM department_info WHERE node_name = '陕西一队' ), ( SELECT geom FROM department_info WHERE node_name = '陕西二队' ) ) ),
	( SELECT geom FROM department_info WHERE node_name = '陕西三队' ) 
	) 
	),
	( SELECT geom FROM department_info WHERE node_name = '陕西管理处' ) 
	)

结果:
SQL:postgresql中合并多个geom数据ST_Union以及比较两个geom数据是否相同ST_Equals_数组_05

SELECT
	ST_Equals ( ( SELECT geom FROM department_info WHERE node_name = '陕西一队' ), ( SELECT geom FROM department_info WHERE node_name = '陕西一队' ) )

SQL:postgresql中合并多个geom数据ST_Union以及比较两个geom数据是否相同ST_Equals_css_06