- 這個效率比較高的寫法
WITH componentTab AS ( SELECT * FROM pgr_connectedComponents ( 'SELECT id,source,target,cost,reverse_cost FROM yh_map_supplypipe' ) ) UPDATE yh_map_supplypipe SET componentid = componentTab.component from componentTab where yh_map_supplypipe.SOURCE = componentTab.node
2.這個效率比較低的寫法
WITH componentTab AS ( SELECT * FROM pgr_connectedComponents ( 'SELECT id,source,target,cost,reverse_cost FROM yh_map_supplypipe' ) ) UPDATE yh_map_supplypipe SET componentid = ( SELECT componentTab.component FROM yh_map_supplypipe, componentTab WHERE yh_map_supplypipe. SOURCE = componentTab.node LIMIT 1 )
注意:里面千萬不能用別名,會出現都是同一值的情況