MySQL には、2 つの幾何図形 g1
と g2
の最小外接矩形間の関係をテストする関数がいくつか用意されています。戻り値 1 と 0 は、それぞれ true と false を示します。
-
g1
の最小外接矩形がg2
の最小外接矩形を含んでいるかどうかを示す 1 または 0 を返します。これは、MBRWithin()
とは逆の関係をテストします。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), MBRWithin(@g2,@g1); +----------------------+--------------------+ | MBRContains(@g1,@g2) | MBRWithin(@g2,@g1) | +----------------------+--------------------+ | 1 | 1 | +----------------------+--------------------+
-
2 つの幾何図形
g1
とg2
の最小外接矩形が切り離されている (交差していない) かどうかを示す 1 または 0 を返します。 -
2 つの幾何図形
g1
とg2
の最小外接矩形が同じであるかどうかを示す 1 または 0 を返します。 -
2 つの幾何図形
g1
とg2
の最小外接矩形が交差しているかどうかを示す 1 または 0 を返します。 -
2 つの幾何図形
g1
とg2
の最小外接矩形がオーバーラップしているかどうかを示す 1 または 0 を返します。空間的にオーバーラップしているという用語が使用されるのは、2 つの幾何図形が交差しており、かつそれらの交差によって同じ次元の幾何図形が生成されるが、指定された幾何図形のどちらとも等しくない場合です。 -
2 つの幾何図形
g1
とg2
の最小外接矩形が接しているかどうかを示す 1 または 0 を返します。2 つの幾何図形が空間的に接しているのは、これらの幾何図形の内部は交差していないが、一方の幾何図形の境界が他方の幾何図形の境界または内部と交差している場合です。 -
g1
の最小外接矩形がg2
の最小外接矩形の内部にあるかどうかを示す 1 または 0 を返します。これは、MBRContains()
とは逆の関係をテストします。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 | +--------------------+--------------------+