Topik ini menjelaskan fungsi pemrosesan yang didukung oleh Lindorm GanosBase.
Mesin dan versi yang berlaku
Fungsi pemrosesan yang dijelaskan dalam topik ini hanya berlaku untuk semua versi LindormTable.
Fungsi
Tabel berikut menjelaskan fungsi pemrosesan yang didukung oleh Lindorm GanosBase.
Fungsi | Deskripsi |
Mengembalikan objek geometri buffer yang terdiri dari semua titik yang jarak 2D-nya ke objek geometri sumber tertentu sama dengan radius yang ditentukan. | |
Mengembalikan objek geometri buffer yang terdiri dari semua titik yang jarak bola mereka ke objek geometri sumber tertentu sama dengan radius yang ditentukan. | |
Menggabungkan dua atau lebih objek geometri menjadi objek MultiPoint, MultiLineString, MultiPolygon, atau GeometryCollection. | |
Mengembalikan objek geometri yang mewakili bagian dari objek geometri pertama yang tidak berpotongan dengan objek geometri kedua yang Anda tentukan. | |
Mengembalikan objek geometri yang mewakili bagian dari objek geometri pertama yang berpotongan dengan objek geometri kedua yang Anda tentukan. | |
Mengembalikan lingkaran terkecil yang dapat sepenuhnya menampung objek geometri yang ditentukan. | |
Mengembalikan radius lingkaran terkecil yang dapat sepenuhnya menampung objek geometri yang ditentukan. | |
Mengonversi objek geometri yang tidak valid menjadi objek geometri yang valid. | |
Mengembalikan objek geometri yang mewakili gabungan beberapa objek geometri yang ditentukan. |
ST_Buffer
Fungsi ST_Buffer mengembalikan objek geometri buffer yang terdiri dari semua titik dengan jarak 2D ke objek geometri sumber tertentu sama dengan radius yang ditentukan.
Sintaksis
ST_Buffer(geometry g, double radius)Parameter
Parameter | Deskripsi |
g | Objek geometri sumber berdasarkan mana jarak 2D titik-titik dihitung. |
radius | Jarak 2D dari objek geometri sumber ke titik-titik objek geometri buffer. Unit: derajat. |
Anda dapat menentukan objek geometri dari jenis-jenis berikut: Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon, dan GeometryCollection.
Jika Anda menentukan nilai positif untuk radius, cincin objek geometri buffer menjauh dari pusat objek geometri sumber. Jika Anda menentukan nilai negatif untuk radius, cincin objek geometri buffer menuju pusat objek geometri sumber. Geometri yang dikembalikan mungkin kosong.
Hanya gaya buffer default yang didukung. Secara default, nilai quadrantSegments adalah 8 dan nilai endCapStyle adalah round.
Contoh
Contoh 1:
SELECT ST_AsText(ST_Buffer(ST_GeomFromText('POINT(120.18 30.25)'), 0.05)) AS buffer;Hasil berikut dikembalikan:
+--------------------------------+ | buffer | +--------------------------------+ | POLYGON ((120.23 30.25, | | 120.22903926402017 | | 30.240245483899194, | | 120.22619397662557 | | 30.230865828381745, | | 120.22157348061513 | | 30.22222148834902, | | 120.21535533905933 | | 30.21464466094067, | | 120.20777851165099 | | 30.208426519384872, | | 120.19913417161825 | | 30.203806023374437, | | 120.18975451610082 | | 30.200960735979837, 120.18 | | 30.2, 120.1702454838992 | | 30.200960735979837, | | 120.16086582838176 | | 30.203806023374437, | | 120.15222148834903 | | 30.208426519384872, | | 120.14464466094068 | | 30.21464466094067, | | 120.13842651938488 | | 30.22222148834902, | | 120.13380602337445 | | 30.230865828381745, | | 120.13096073597984 | | 30.240245483899194, | | 120.13000000000001 | | 30.25, 120.13096073597984 | | 30.259754516100806, | | 120.13380602337445 | | 30.269134171618255, | | 120.13842651938488 | | 30.27777851165098, | | 120.14464466094068 | | 30.28535533905933, | | 120.15222148834903 | | 30.291573480615128, | | 120.16086582838176 | | 30.296193976625563, | | 120.1702454838992 | | 30.299039264020163, 120.18 | | 30.3, 120.18975451610082 | | 30.299039264020163, | | 120.19913417161825 | | 30.296193976625563, | | 120.20777851165099 | | 30.291573480615128, | | 120.21535533905933 | | 30.28535533905933, | | 120.22157348061513 | | 30.27777851165098, | | 120.22619397662557 | | 30.269134171618255, | | 120.22903926402017 | | 30.259754516100806, 120.23 | | 30.25)) | +--------------------------------+Contoh 2:
SELECT ST_AsText(ST_Buffer(ST_GeomFromText('LINESTRING (120.18 30.25, 120.16 30.23)'), 0.01)) AS buffer;Hasil berikut dikembalikan:
+--------------------------------+ | buffer | +--------------------------------+ | POLYGON ((120.16707106781186 | | 30.222928932188132, | | 120.1655557023302 | | 30.221685303876974, | | 120.16382683432364 | | 30.220761204674886, | | 120.16195090322016 | | 30.220192147195966, 120.16 | | 30.22, 120.15804909677983 | | 30.22019214719597, | | 120.15617316567635 | | 30.22076120467489, | | 120.1544442976698 | | 30.221685303876978, | | 120.15292893218813 | | 30.222928932188136, | | 120.15168530387697 | | 30.224444297669805, | | 120.15076120467488 | | 30.226173165676354, | | 120.15019214719597 | | 30.22804909677984, | | 120.14999999999999 | | 30.230000000000004, | | 120.15019214719597 | | 30.231950903220163, | | 120.15076120467488 | | 30.233826834323654, | | 120.15168530387697 | | 30.2355557023302, | | 120.15292893218813 | | 30.23707106781187, | | 120.17292893218814 | | 30.257071067811868, | | 120.17444429766981 | | 30.258314696123026, | | 120.17617316567636 | | 30.259238795325114, | | 120.17804909677984 | | 30.259807852804034, 120.18 | | 30.26, 120.18195090322017 | | 30.25980785280403, | | 120.18382683432365 | | 30.25923879532511, | | 120.1855557023302 | | 30.258314696123023, | | 120.18707106781187 | | 30.257071067811864, | | 120.18831469612303 | | 30.255555702330195, | | 120.18923879532512 | | 30.253826834323647, | | 120.18980785280404 | | 30.25195090322016, | | 120.19000000000001 | | 30.249999999999996, | | 120.18980785280404 | | 30.248049096779837, | | 120.18923879532512 | | 30.246173165676346, | | 120.18831469612303 | | 30.2444442976698, | | 120.18707106781187 | | 30.242928932188132, | | 120.16707106781186 | | 30.222928932188132)) | +--------------------------------+
ST_BufferSphere
Fungsi ST_BufferSphere mengembalikan objek geometri buffer yang terdiri dari semua titik dengan jarak bola mereka ke objek geometri sumber tertentu sama dengan radius yang ditentukan.
Sintaksis
ST_BufferSphere(geometry g, double radius)Parameter
Parameter | Deskripsi |
g | Objek geometri sumber berdasarkan mana jarak bola titik-titik dihitung. |
radius | Jarak bola dari objek geometri sumber ke titik-titik objek geometri buffer. Unit: meter. |
Anda dapat menentukan objek geometri dari jenis-jenis berikut: Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon, dan GeometryCollection.
Jika Anda menentukan nilai positif untuk radius, cincin objek geometri buffer menjauh dari pusat objek geometri sumber. Jika Anda menentukan nilai negatif untuk radius, cincin objek geometri buffer menuju pusat objek geometri sumber. Geometri yang dikembalikan mungkin kosong.
Hanya gaya buffer default yang didukung. Secara default, nilai quadrantSegments adalah 8 dan nilai endCapStyle adalah round.
Contoh
Contoh 1:
SELECT ST_AsText(ST_BufferSphere(ST_GeomFromText('POINT(120.18 30.25)'), 500)) AS buffer;Hasil berikut dikembalikan:
+--------------------------------+ | buffer | +--------------------------------+ | POLYGON ((120.1851909310331 | | 30.25011173053024, | | 120.18511627294788 | | 30.249230378090658, | | 120.18484500297895 | | 30.248378605521545, | | 120.18438755060062 | | 30.247589145091563, | | 120.1837614989031 | | 30.246892333708224, | | 120.18299090835872 | | 30.24631494733322, | | 120.18210539193977 | | 30.245879172318283, | | 120.18113897716789 | | 30.24560175314354, | | 120.18012879881775 | | 30.245493349257533, | | 120.17911367245745 | | 30.245558125686234, | | 120.17813260355221 | | 30.245793593106626, | | 120.17722328930826 | | 30.246190703510113, | | 120.17642067070908 | | 30.24673419777976, | | 120.17575559027851 | | 30.247403191844143, | | 120.17525360707266 | | 30.248171978919647, | | 120.1749340144007 | | 30.249011017060198, | | 120.17480909803247 | | 30.249888064116504, | | 120.17488366345407 | | 30.250769416537622, | | 120.17515485043153 | | 30.251621204446096, | | 120.17561224212514 | | 30.252410693237966, | | 120.17623826468355 | | 30.253107541687907, | | 120.17700886207045 | | 30.253684968191145, | | 120.17789442027193 | | 30.254120780286797, | | 120.1788609054053 | | 30.25439822784955, | | 120.17987117198402 | | 30.25450664710903, | | 120.18088639100795 | | 30.254441870698788, | | 120.18186754290468 | | 30.254206387939035, | | 120.1827769178333 | | 30.25380924917365, | | 120.1835795655716 | | 30.253265717837415, | | 120.1842446391596 | | 30.252596683644782, | | 120.18474658058295 | | 30.251827859488568, | | 120.18506610289342 | | 30.250988792960012, | | 120.1851909310331 | | 30.25011173053024)) | +--------------------------------+Contoh 2:
SELECT ST_AsText(ST_BufferSphere(ST_GeomFromText('LINESTRING (120.18 30.25, 120.16 30.23)'), 20)) AS buffer;Hasil berikut dikembalikan:
+--------------------------------+ | buffer | +--------------------------------+ | POLYGON ((120.1601568095326 | | 30.229881789491696, | | 120.16012723865646 | | 30.22985749603038, | | 120.16009277809007 | | 30.229838678911875, | | 120.16005475213065 | | 30.229826061263992, | | 120.16001462208855 | | 30.22982012797305, | | 120.15997393013107 | | 30.229821107050387, | | 120.15993424001891 | | 30.22982896087028, | | 120.15989707701289 | | 30.229843387615915, | | 120.15986386926043 | | 30.229863832877875, | | 120.15983589291346 | | 30.229889510959428, | | 120.15981422308717 | | 30.229919435069952, | | 120.15979969254388 | | 30.22995245524614, | | 120.15979285969011 | | 30.22998730254394, | | 120.15979398711634 | | 30.23002263780298, | | 120.15980303150468 | | 30.230057103109367, | | 120.15981964529222 | | 30.230089373979652, | | 120.15984319002649 | | 30.230118210260056, | | 120.17984317814214 | | 30.250118233425205, | | 120.17987275990819 | | 30.250142523059253, | | 120.17990723145967 | | 30.250161335607235, | | 120.17994526807108 | | 30.250173948109982, | | 120.17998540801094 | | 30.250179875873307, | | 120.18002610871608 | | 30.25017889109486, | | 120.18006580607275 | | 30.25017103161881, | | 120.18010297452594 | | 30.250156599481485, | | 120.18013618570674 | | 30.25013614930418, | | 120.18016416332479 | | 30.25011046697896, | | 120.18018583221566 | | 30.250080539466826, | | 120.18020035965924 | | 30.250047516868772, | | 120.18020718737982 | | 30.25001266822753, | | 120.18020605299972 | | 30.249977332758547, | | 120.18019700012098 | | 30.2499428683844, | | 120.18018037664854 | | 30.249910599550603, | | 120.1801568214192 | | 30.249881766327974, | | 120.1601568095326 | | 30.229881789491696)) | +--------------------------------+
ST_Collect
Fungsi ST_Collect menggabungkan dua atau lebih objek geometri menjadi objek MultiPoint, MultiLineString, MultiPolygon, atau GeometryCollection.
Sintaksis
ST_Collect(geometry geomA, geometry geomB)
ST_Collect(geometry geomA, geometry geomB, ...,geometry geomN)Parameter
Parameter | Deskripsi |
geomA | Objek geometri pertama yang ingin Anda tentukan. |
geomB | Objek geometri kedua yang ingin Anda tentukan. |
geomN | Objek geometri ke-N yang ingin Anda tentukan. |
Fungsi
ST_Collectmengembalikan objek MultiPoint, MultiLineString, MultiPolygon, atau GeometryCollection. Jenis objek ini hanya dapat dibaca tetapi tidak dapat ditulis oleh Lindorm GanosBase SQL.Fungsi
ST_CollectdanST_Uniondapat saling dipertukarkan dalam penggunaan. Namun, kedua fungsi tersebut memiliki perbedaan berikut:Fungsi
ST_Collectmengembalikan objek MultiPoint, MultiLineString, MultiPolygon, atau GeometryCollection. FungsiST_Unionmungkin mengembalikan objek geometri tunggal.Fungsi
ST_Unionmembagi objek LineString pada persimpangan node sementara fungsiST_Collectmengembalikan objek MultiLineString.Secara umum, kinerja komputasi
ST_Collectlebih unggul daripadaST_Union. Hal ini karenaST_Collecttidak membagi batas objek geometri yang ditentukan atau memeriksa apakah objek MultiPolygon yang ditentukan tumpang tindih. ST_Collect menggabungkan beberapa objek geometri menjadi objek MultiPoint, MultiLineString, atau MultiPolygon atau menggabungkan beberapa objek MultiPoint, MultiLineString, atau MultiPolygon menjadi objek GeometryCollection.
Contoh
Contoh 1: Dapatkan objek MultiPoint.
SELECT ST_AsText(ST_Collect(ST_MakePoint(0,0),ST_MakePoint(0,1))) AS g;Hasil berikut dikembalikan:
+---------------------------+ | g | +---------------------------+ | MULTIPOINT ((0 0), (0 1)) | +---------------------------+Contoh 2: Dapatkan objek GeometryCollection.
SELECT ST_AsText(ST_Collect(ST_MakePoint(0,0),ST_GeomFromText('LINESTRING(0 2,0 3)'))) AS g;Hasil berikut dikembalikan:
+--------------------------------+ | g | +--------------------------------+ | GEOMETRYCOLLECTION (POINT (0 | | 0), LINESTRING (0 2, 0 3)) | +--------------------------------+
ST_Difference
Fungsi ST_Difference mengembalikan objek geometri yang mewakili bagian dari objek geometri pertama yang tidak berpotongan dengan objek geometri kedua yang Anda tentukan.
Sintaksis
ST_Difference(geometry geomA, geometry geomB)Parameter
Parameter | Deskripsi |
geomA | Objek geometri pertama yang ingin Anda tentukan. |
geomB | Objek geometri kedua yang ingin Anda tentukan. |
Anda dapat menentukan objek geometri dari jenis-jenis berikut: Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon, dan GeometryCollection.
Jika objek geometri pertama yang Anda tentukan kosong atau sepenuhnya terkandung oleh objek geometri kedua yang Anda tentukan, objek kosong akan dikembalikan.
Jika Anda menentukan poligon yang memiliki tepi yang berpotongan, fungsi ini mungkin tidak mengembalikan hasil.
Urutan objek geometri input memengaruhi objek geometri output.
Contoh
SELECT ST_AsText(ST_Difference(ST_GeomFromText('LINESTRING(50 100, 50 200)'),ST_GeomFromText('LINESTRING(50 50, 50 150)'))) AS diff;Hasil berikut dikembalikan:
+-----------------------------+
| diff |
+-----------------------------+
| LINESTRING (50 150, 50 200) |
+-----------------------------+ST_Intersection
Fungsi ST_Intersection mengembalikan objek geometri yang mewakili bagian dari objek geometri pertama yang berpotongan dengan objek geometri kedua yang Anda tentukan.
Sintaksis
ST_Intersection(geometry geomA, geometry geomB)Parameter
Parameter | Deskripsi |
geomA | Objek geometri pertama yang ingin Anda tentukan. |
geomB | Objek geometri kedua yang ingin Anda tentukan. |
Anda dapat menentukan objek geometri dari jenis-jenis berikut: Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon, dan GeometryCollection.
Jika salah satu objek geometri yang ditentukan kosong, objek kosong akan dikembalikan.
Jika Anda menentukan poligon yang memiliki tepi yang berpotongan, fungsi ini mungkin tidak mengembalikan hasil.
Contoh
SELECT ST_AsText(ST_Intersection(ST_GeomFromText('POINT(0 0)'), ST_GeomFromText('LINESTRING ( 0 0, 0 2 )'))) AS inter;Hasil berikut dikembalikan:
+-------------+
| inter |
+-------------+
| POINT (0 0) |
+-------------+ST_MinimumBoundingCircle
Fungsi ST_MinimumBoundingCircle mengembalikan lingkaran terkecil yang dapat sepenuhnya menampung objek geometri yang ditentukan.
Sintaksis
ST_MinimumBoundingCircle(geometry g)Parameter
Parameter | Deskripsi |
g | Objek geometri yang sepenuhnya terkandung oleh lingkaran yang dikembalikan. |
Fungsi ST_MinimumBoundingCircle biasanya digunakan untuk objek MultiPoint, MultiLineString, MultiPolygon, atau GeometryCollection. Fungsi ini bukan fungsi agregat. Namun, Anda dapat menggunakan fungsi ini bersama dengan fungsi ST_Collect untuk mendapatkan lingkaran pembatas terkecil dari sekumpulan objek geometri. Contoh: ST_MinimumBoundingCircle(ST_Collect(geometry geomA, geometry geomB, geometry geomC, ...)).
Contoh
SELECT ST_AsText(ST_MinimumBoundingCircle(ST_GeomFromText('POLYGON((0 0,1 0,1 1,0 1,0 0))'))) AS g;Hasil berikut dikembalikan:
+--------------------------------+
| g |
+--------------------------------+
| POLYGON ((1.2071067811865475 |
| 0.5, 1.1935199226610738 |
| 0.3620503103585285, |
| 1.1532814824381883 |
| 0.2294019499269015, |
| 1.0879378012096794 |
| 0.1071525208064489, 1 |
| 0, 0.8928474791935512 |
| -0.0879378012096794, |
| 0.7705980500730986 |
| -0.1532814824381883, |
| 0.6379496896414716 |
| -0.1935199226610738, |
| 0.5 -0.2071067811865476, |
| 0.3620503103585285 |
| -0.1935199226610738, |
| 0.2294019499269015 |
| -0.1532814824381883, |
| 0.107152520806449 |
| -0.0879378012096794, |
| 0 -0.0000000000000001, |
| -0.0879378012096794 |
| 0.1071525208064489, |
| -0.1532814824381883 |
| 0.2294019499269014, |
| -0.1935199226610738 |
| 0.3620503103585282, |
| -0.2071067811865476 |
| 0.4999999999999999, |
| -0.1935199226610738 |
| 0.6379496896414716, |
| -0.1532814824381884 |
| 0.7705980500730985, |
| -0.0879378012096795 |
| 0.892847479193551, |
| -0.0000000000000001 |
| 1, 0.1071525208064489 |
| 1.0879378012096794, |
| 0.2294019499269011 |
| 1.1532814824381883, |
| 0.3620503103585282 |
| 1.1935199226610735, |
| 0.4999999999999999 |
| 1.2071067811865475, |
| 0.6379496896414716 |
| 1.1935199226610738, |
| 0.7705980500730987 |
| 1.1532814824381883, |
| 0.8928474791935508 |
| 1.0879378012096796, |
| 0.9999999999999999 |
| 1, 1.0879378012096794 |
| 0.892847479193551, |
| 1.1532814824381883 |
| 0.7705980500730989, |
| 1.1935199226610735 |
| 0.6379496896414718, |
| 1.2071067811865475 0.5)) |
+--------------------------------+ST_MinimumBoundingRadius
Fungsi ST_MinimumBoundingRadius mengembalikan radius lingkaran terkecil yang dapat sepenuhnya menampung objek geometri yang ditentukan.
Sintaksis
ST_MinimumBoundingRadius(geometry g)Parameter
Parameter | Deskripsi |
g | Objek geometri yang sepenuhnya terkandung oleh lingkaran yang dikembalikan. |
Secara default, hasil yang dikembalikan mendukung nilai DOUBLE dengan hingga 16 tempat desimal.
Anda dapat menggunakan fungsi ini bersama dengan fungsi
ST_Collectuntuk mendapatkan radius lingkaran pembatas terkecil dari sekumpulan objek geometri.
Contoh
SELECT ST_MinimumBoundingRadius(ST_GeomFromText('POLYGON((0 1,-1 0,0 -1,1 0,0 1))')) AS radius;Hasil berikut dikembalikan:
+----------+
| radius |
+----------+
| 1.0 |
+----------+ST_MakeValid
Fungsi ST_MakeValid mengonversi objek geometri yang tidak valid menjadi objek geometri yang valid.
Sintaksis
geometry ST_MakeValid(geometry g)Parameter
Parameter | Deskripsi |
g | Objek geometri yang ingin Anda tentukan. |
Anda dapat memanggil fungsi
ST_MakeValiduntuk mengonversi objek Polygon yang berpotongan sendiri menjadi objek MultiPolygon yang terdiri dari beberapa objek Polygon.Untuk objek MultiPolygon yang terdiri dari beberapa objek Polygon yang tumpang tindih, Anda dapat memanggil fungsi
ST_MakeValiduntuk menghitung gabungan objek Polygon yang tumpang tindih dan menggabungkan objek-objek tersebut menjadi satu objek Polygon.
Contoh
Contoh 1: Konversikan objek Polygon yang berpotongan sendiri menjadi objek MultiPolygon yang terdiri dari beberapa objek Polygon tanpa potongan diri.
SELECT ST_AsText(geom) as original, ST_AsText(ST_MakeValid(geom)) AS validated FROM mapdata WHERE id=10000001;Hasil berikut dikembalikan:
+--------------------------------+--------------------------------+ | original | validated | +--------------------------------+--------------------------------+ | POLYGON ((0 0, 10 10, 0 10, 10 | MULTIPOLYGON (((0 0, 5 5, 10 | | 0, 0 0)) | 0, 0 0)), ((5 5, 0 10, 10 10, | | | 5 5))) | +--------------------------------+--------------------------------+Contoh 2: Konversikan objek MultiPolygon yang terdiri dari beberapa objek Polygon yang tumpang tindih menjadi objek Polygon yang merupakan gabungan objek Polygon yang tumpang tindih.
SELECT ST_AsText(geom) as original, ST_AsText(ST_MakeValid(geom)) AS validated FROM mapdata WHERE adcode=10000002;Hasil berikut dikembalikan:
+--------------------------------+--------------------------------+ | original | validated | +--------------------------------+--------------------------------+ | MULTIPOLYGON (((0 0, 5 6, 10 | POLYGON ((4.166666666666667 | | 0, 0 0)), ((5 4, 0 10, 10 10, | 5, 0 10, 10 10, | | 5 4))) | 5.833333333333333 5, 10 0, 0 | | | 0, 4.166666666666667 5)) | +--------------------------------+--------------------------------+
ST_Union
Fungsi ST_Union mengembalikan objek geometri yang merupakan gabungan dari beberapa objek geometri yang ditentukan.
Sintaksis
ST_Union(geometry g1, geometry g2, ..., geometry gn)Fungsi ini dapat mengembalikan objek geometri tunggal, MultiPoint, MultiLineString, MultiPolygon, atau GeometryCollection.
Parameter
Parameter | Deskripsi |
g1 | Objek geometri pertama yang ingin Anda tentukan. |
g2 | Objek geometri kedua yang ingin Anda tentukan. |
gn | Objek geometri ke-N yang ingin Anda tentukan. |
Objek geometri yang didukung oleh fungsi ini mencakup objek Point, LineString, dan Polygon.
Tipe objek geometri yang dikembalikan oleh fungsi ini bervariasi berdasarkan parameter input yang Anda tentukan:
Jika Anda menentukan dua objek geometri, fungsi ini mengembalikan objek geometri tunggal, objek MultiPoint, MultiLineString, atau MultiPolygon, atau objek GeometryCollection. Jika salah satu dari dua objek geometri yang ditentukan adalah NULL, fungsi ini mengembalikan NULL. Jika salah satu dari dua objek geometri yang ditentukan adalah objek kosong, fungsi ini mengembalikan objek geometri lainnya.
Jika Anda menentukan tiga atau lebih objek geometri, fungsi ini mengembalikan objek geometri tunggal atau objek MultiPoint, MultiLineString, atau MultiPolygon.
Fungsi
ST_CollectdanST_Uniondapat saling dipertukarkan dalam penggunaan. Secara umum, kinerja komputasiST_Collectlebih unggul dibandingkan denganST_Union. Hal ini karenaST_Collecttidak membagi batas objek geometri yang ditentukan atau memeriksa apakah objek MultiPolygon yang ditentukan tumpang tindih.Jika Anda menentukan poligon yang memiliki tepi yang berpotongan, fungsi ini mungkin tidak mengembalikan hasil.
Contoh
SELECT ST_AsText(ST_Union(ST_MakePoint(1.0, 1.0), ST_MakePoint(2.0, 2.0))) AS u;Hasil berikut dikembalikan:
+---------------------------+
| u |
+---------------------------+
| MULTIPOINT ((1 1), (2 2)) |
+---------------------------+