MySQL提供了一些可测试两个几何对象g1和g2最小边界矩形之间关系的函数。它们包括:
MBRContains(g1,g2)
返回1或0以指明g1的最小边界矩形是否包含g2的最小边界矩形。
mysql> SET @g1 = GeomFromText('Polygon((0 0,0 3,3 3,3 0,0 0))');
mysql> SET @g2 = GeomFromText('Point(1 1)');
mysql> SELECT MBRContains(@g1,@g2), MBRContains(@g2,@g1);
----------------------+----------------------+
| MBRContains(@g1,@g2) | MBRContains(@g2,@g1) |
+----------------------+----------------------+
| 1 | 0 |
+----------------------+----------------------+
MBRDisjoint(g1,g2)
返回1或0以指明两个几何变量g1和g2的最小边界矩形是否不相交。
MBREqual(g1,g2)
返回1或0以指明两个几何变量g1和g2的最小边界矩形是否相同。
MBRIntersects(g1,g2)
返回1或0以指明两个几何变量g1和g2的最小边界矩形是否相交。
MBROverlaps(g1,g2)
返回1或0以指明两个几何变量g1和g2的最小边界矩形是否交迭。
MBRTouches(g1,g2)
返回1或0以指明两个几何变量g1和g2的最小边界矩形是否接触。
MBRWithin(g1,g2)
返回1或0以指明g1的最小边界矩形是否位于g2的最小边界矩形内。
mysql> SET @g1 = GeomFromText('Polygon((0 0,0 3,3 3,3 0,0 0))');
mysql> SET @g2 = GeomFromText('Polygon((0 0,0 5,5 5,5 0,0 0))');
mysql> SELECT MBRWithin(@g1,@g2), MBRWithin(@g2,@g1);
+--------------------+--------------------+
| MBRWithin(@g1,@g2) | MBRWithin(@g2,@g1) |
+--------------------+--------------------+
| 1 | 0 |
+--------------------+--------------------+