Determine the length of the outer polygon with EXTERIORRING function: : polygon « Geometric « SQL / MySQL






Determine the length of the outer polygon with EXTERIORRING function:

     
mysql>
mysql>
mysql> CREATE TABLE mytable (
    ->     id INT NOT NULL PRIMARY KEY,
    ->     border POLYGON NOT NULL,
    ->     ela LINESTRING NOT NULL,
    ->     ref POINT NOT NULL,
    ->     name VARCHAR(20),
    ->     SPATIAL KEY(border),
    ->     SPATIAL KEY(ela),
    ->     SPATIAL KEY(ref)
    -> );
Query OK, 0 rows affected (0.00 sec)

mysql>
mysql>
mysql> INSERT INTO mytable VALUES ( 1,
    -> GEOMFROMTEXT('POLYGON(
    '> (25 15,10 25,25 35,30 50,30 60,
    '> 35 65,40 55,45 30,55 20,25 15),
    '> (3395 2827,3861 2840,4094 2374,3395 2594,3395 2827)
    '> )'),
    -> GEOMFROMTEXT('LINESTRING(25 35, 45 30)'),
    -> GEOMFROMTEXT('POINT(2850 2350)'), 'gl_1');
Query OK, 1 row affected (0.00 sec)

mysql>
mysql> INSERT INTO mytable VALUES ( 2,
    -> GEOMFROMTEXT('POLYGON((70 20,55 20,65 30,
    '> 65 50,70 55,80 50,85 40,80 30,
    '> 85 25,70 20))'),
    -> GEOMFROMTEXT('LINESTRING(65 35, 80 30)'),
    -> GEOMFROMTEXT('POINT(7250 2750)'), 'gl_2');
Query OK, 1 row affected (0.00 sec)

mysql>
mysql> SELECT name,AREA(border), GLENGTH(EXTERIORRING(border)) FROM mytable;
+------+--------------+-------------------------------+
| name | AREA(border) | GLENGTH(EXTERIORRING(border)) |
+------+--------------+-------------------------------+
| gl_1 |     190613.5 |              150.169354598032 |
| gl_2 |        587.5 |              112.636679210801 |
+------+--------------+-------------------------------+
2 rows in set (0.00 sec)

mysql>
mysql> drop table mytable;
Query OK, 0 rows affected (0.00 sec)

   
    
    
    
    
  








Related examples in the same category

1.Geometric Functions for Polygon Objects
2.POLYGON type column: A closed LINESTRING; two-dimensional.
3.Using the POLYGON object in the variable