select ST_union(gdGeom) gdGeom
FROM (
SELECT st_setsrid(ST_MakeValid(ST_UnaryUnion(ST_GeomFromGeoJSON(‘{"type":"Polygon","coordinates":[[[120.975638859303,31.3283192036255],[120.970778743191,31.3256145147033],[120.95857452115,31.3322375250399],[120.957987523149,31.3330245538613],[120.957330529509,31.334168580807],[120.953603682517,31.3462786322075],[120.94005602555,31.3612369822518],[120.950500009608,31.3735147729202],[120.9654383331,31.3813001827813],[120.982623372859,31.4101638657093],[120.97882130061,31.3646903719643],[120.977531230492,31.3603893943331],[120.973724988797,31.3483324737896],[120.975638859303,31.3283192036255]]]}‘::jsonb))),4326) gdGeom
UNION
SELECT st_setsrid(ST_MakeValid(ST_UnaryUnion(ST_GeomFromGeoJSON(‘{"type":"Polygon","coordinates":[[[121.028525687066,31.3832837168027],[121.0112065046,31.3830728706246],[121.004907657887,31.3843916777245],[120.983330471907,31.3930130747498],[120.977824498246,31.3972531187829],[120.977791498025,31.3972751200602],[120.977691410858,31.4062410329178],[120.974605209348,31.4164931702297],[120.979113193293,31.4221548919732],[120.981680159137,31.4265938447168],[121.017168116006,31.4494788604357],[121.018689975332,31.4220455451131],[121.039621070261,31.409067314981],[121.055906923596,31.4061392623603],[121.054691959784,31.3972050262552],[121.055987996826,31.3870949704915],[121.033364811293,31.3844573150417],[121.028525687066,31.3832837168027]]]}‘::jsonb))),4326) gdGeom
) as foo
13,查两个结果的差集