<->(距离)
📄字数 718
👁️阅读量 加载中...
功能描述
计算几何对象之间距离。
语法格式
L_OPERAND_TYP <-> R_OPERAND_TYP输入参数
| L_OPERAND_TYP(左操作数类型) | R_OPERAND_TYP(右操作数类型) | RET_TYPE(返回类型) |
|---|---|---|
| LSEG | POINT | DOUBLE |
| POINT | LSEG | DOUBLE |
| POINT | BOX | DOUBLE |
| POINT | LINE | DOUBLE |
| CIRCLE | CIRCLE | DOUBLE |
| BOX | BOX | DOUBLE |
| LINE | POINT | DOUBLE |
| LSEG | BOX | DOUBLE |
| LINE | LSEG | DOUBLE |
| POINT | PATH | DOUBLE |
| BOX | LSEG | DOUBLE |
| PATH | POINT | DOUBLE |
| BOX | POINT | DOUBLE |
| POINT | CIRCLE | DOUBLE |
| POINT | POLYGON | DOUBLE |
| CIRCLE | POINT | DOUBLE |
| POLYGON | POINT | DOUBLE |
| CIRCLE | POLYGON | DOUBLE |
| LINE | LINE | DOUBLE |
| LSEG | LSEG | DOUBLE |
| POLYGON | CIRCLE | DOUBLE |
| LSEG | LINE | DOUBLE |
| PATH | PATH | DOUBLE |
| POINT | POINT | DOUBLE |
| POLYGON | POLYGON | DOUBLE |
输出结果
输出结果的类型为 DOUBLE 类型。
示例
sql
-- CIRCLE <-> CIRCLE 计算圆到圆的距离。
SQL> SELECT CIRCLE('<(0,0),1>') <-> CIRCLE('<(5,0),1>');
+--------------+
| EXPR1 |
+--------------+
| 3.000000e+00 |
+--------------+
-- POINT <-> LSEG 计算点到线段的距离
SQL> SELECT POINT('(0,0)') <-> LSEG('[(2,0),(0,2)]') ;
+--------------+
| EXPR1 |
+--------------+
| 1.414214e+00 |
+--------------+
-- CIRCLE <-> POLYGON 计算圆到多边形的距离
SQL> SELECT CIRCLE('<(0,0),1>') <-> POLYGON('(10, 110), (20, 120), (30, 130), (40, 140)');
+--------------+
| EXPR1 |
+--------------+
| 1.094536e+02 |
+--------------+