Ce face MBREquals()
MBREquals() compară doar dreptunghiurile minime de încadrare. Un pătrat și diagonala lui au același dreptunghi, deci rezultatul este 1, deși formele sunt foarte diferite. Spre deosebire de celelalte funcții MBR, nu returnează NULL pentru geometrii goale.
Parametri
| Parametru | Descriere |
|---|---|
g1, g2 |
Geometriile ale căror dreptunghiuri se compară. |
Ce returnează
1 sau 0.
Exemple
Exemplul 1: Pătrat, diagonală și alt pătrat
SET @patrat = ST_GeomFromText('POLYGON((0 0,4 0,4 4,0 4,0 0))');
SELECT MBREquals(@patrat, ST_GeomFromText('LINESTRING(0 0,4 4)')) AS cu_diagonala,
ST_Equals(@patrat, ST_GeomFromText('LINESTRING(0 0,4 4)')) AS egal_exact,
MBREquals(@patrat, ST_GeomFromText('POLYGON((0 0,5 0,5 5,0 5,0 0))')) AS cu_patrat_mai_mare;
Rezultat
+--------------+------------+--------------------+
| cu_diagonala | egal_exact | cu_patrat_mai_mare |
+--------------+------------+--------------------+
| 1 | 0 | 0 |
+--------------+------------+--------------------+
Greșeli frecvente
- Folosești
MBREquals()ca să găsești duplicate. Forme diferite pot avea același dreptunghi; pentru duplicate foloseșteST_Equals().
Comenzi înrudite
ST_Equals(): Verifică dacă două geometrii reprezintă exact aceeași formă, chiar dacă sunt scrise diferit.ST_Envelope(): Returnează dreptunghiul minim de încadrare (MBR) al unei geometrii, ca poligon.MBRContains() și MBRWithin(): Verifică dacă dreptunghiul de încadrare al unei geometrii îl conține pe al celeilalte; un test rapid, aproximativ.