MariaDB ST_ISEMPTY() 函数的基础用法与实例

MariaDB ST_ISEMPTY() 函数用来检查一个几何对象是否为空对象。

发布于

MariaDB ST_ISEMPTY() 函数用来检查一个几何对象是否为空对象。该函数常用于验证几何对象的有效性。

语法

MairaDB ST_ISEMPTY() 函数的语法如下:

ST_ISEMPTY(g)
  • g:必选参数,代表任意类型的几何对象。

如果几何对象为空,则函数返回 1;如果几何对象非空,则返回 0;如果输入参数为 NULL,则返回 NULL。

实例

检查一个点对象是否为空

此实例演示检查一个点对象是否为空。

SELECT ST_ISEMPTY(ST_GeomFromText('POINT(1 1)'));

以下是该语句的输出:

+-------------------------------------------+
| ST_ISEMPTY(ST_GeomFromText('POINT(1 1)')) |
+-------------------------------------------+
|                                         0 |
+-------------------------------------------+

这说明点不为空。

检查一个空多边形是否为空

此实例演示检查一个空多边形对象是否为空。

SELECT ST_ISEMPTY(ST_GeomFromText('POLYGON()'));

以下是该语句的输出:

+----+------------------+
| id | ST_ISEMPTY(poly) |
+----+------------------+
|  1 |             NULL |
+----+------------------+

检查一个空 GeometryCollection 对象是否为空

此实例演示检查一个空 GeometryCollection 对象是否为空。

DROP TABLE IF EXISTS test_table;
CREATE TABLE test_table (id INT PRIMARY KEY, gc GEOMETRYCOLLECTION);
INSERT INTO test_table (id, gc) VALUES
  (1, ST_GeomFromText('GEOMETRYCOLLECTION()'));

SELECT id, ST_ISEMPTY(gc) FROM test_table;

以下是该语句的输出:

+----+----------------+
| id | ST_ISEMPTY(gc) |
+----+----------------+
|  1 |              0 |
+----+----------------+

检查一个非空 MultiLineString 对象是否为空

此实例演示检查一个非空 MultiLineString 对象是否为空。

DROP TABLE IF EXISTS test_table;
CREATE TABLE test_table (id INT PRIMARY KEY, mls MULTILINESTRING);
INSERT INTO test_table (id, mls) VALUES
  (1, ST_GeomFromText('MULTILINESTRING((0 0, 1 1), (2 2, 3 3))'));

SELECT id, ST_ISEMPTY(mls) FROM test_table;

以下是该语句的输出:

+----+-----------------+
| id | ST_ISEMPTY(mls) |
+----+-----------------+
|  1 |               0 |
+----+-----------------+

检查一个 NULL 几何对象是否为空

此实例演示检查一个 NULL 几何对象时,ST_ISEMPTY() 函数的返回值。

DROP TABLE IF EXISTS test_table;
CREATE TABLE test_table (id INT PRIMARY KEY, g GEOMETRY);
INSERT INTO test_table (id, g) VALUES
  (1, NULL);

SELECT id, ST_ISEMPTY(g) FROM test_table;

以下是该语句的输出:

+----+---------------+
| id | ST_ISEMPTY(g) |
+----+---------------+
|  1 |          NULL |
+----+---------------+

相关函数

以下是几个与 MairaDB ST_ISEMPTY() 相关的几个函数:

  • MariaDB ST_IsSimple() 函数用来检查一个几何对象是否为简单对象。
  • MariaDB ST_Dimension() 函数用来返回一个几何对象的维度。

结论

MariaDB ST_ISEMPTY() 函数是一个非常有用的函数,它允许我们检查一个几何对象是否为空对象。通过本文的实例,我们更好地理解了如何使用这个函数,以及它的作用和用法。需要注意的是,在使用该函数时,需要确保输入的几何对象是有效的,否则可能会导致函数返回 NULL 或者出现错误。此外,该函数还可以与其他几何运算函数结合使用,以实现更加复杂的空间分析和计算。