PostgreSQL 空间数据类型point、 line等

PostgreSQL中提供了空间类型字段

几何类型

   几何数据类型表示二维空间的对象。表6-18 显示了PostgreSQL 里面所有的几何类型。最基本的类型是“点”,它是其它数据类型的基础。

 

6.8.1点(point)

      点是最基本的几何类型。下面语法定义point类型的值:

x , y )

  x , y

x和y都是浮点数,表示横坐标和纵坐标。

eg:

insert into public."user"(userid,name,password,position,phone) values('333','aa','123',point'(1,2)','132');

6.8.2 线段(lseg)

    线段 (lseg)用两个点来代表。 lseg 的值用下面语法定义:

( ( x1 , y1 ) , ( x2 , y2 ) )

  ( x1 , y1 ) , ( x2 , y2 ) 

    x1 , y1   ,   x2 , y2

这里的 (x1,y1), (x2,y2) 是线段的端点。

eg:

insert into public."route"(routeid,line,userid,createtime) values('123',line'( ( 113 , 34.9 ) , ( 114 , 35 ) )','1','2019-01-01');

6.8.3 长方形(box)

    长方形是用两个对角个点来表示的。 它的值用下面的语法定义:

(1)( ( x1 , y1 ) , ( x2 , y2 ) )

(2)( x1 , y1 ) , ( x2 , y2 ) 

(3) x1 , y1   ,   x2 , y2

(x1,y1) 和 (x2,y2) 是长方形的一对对角点。

长方形的数据在输出使用第一种语法。

6.8.4路径(path)

    路径由一系列连接的点组成。路径可能是开路的,列表中第一个点和最后一个点没有连接,也可能是闭路的,第一个和最后一个点连接起来。

path 的值用下面语法定义:

(1)( ( x1 , y1 ) , ... , ( xn , yn ) )

(2)[ ( x1 , y1 ) , ... , ( xn , yn ) ]

(3)( x1 , y1 ) , ... , ( xn , yn ) 

(4) ( x1 , y1   , ... ,   xn , yn ) 

(5) x1 , y1   , ... ,   xn , yn   

    这里的点是构成路径的线段的端点。 方括弧[]表明路径是开路的,圆括弧()表明路径是闭路的。

    路径的数据在输出时使用第一种语法。

6.8.5多边形(polygon)

     多边形由一系列点代表(多边形的顶点)。多边形在概念上与闭路路径一样,但是它与闭路路径的存储方式不一样而且有自己的一套支持函数。

    polygon 的值用下列语法定义:

(1)( ( x1 , y1 ) , ... , ( xn , yn ) )

(2)( x1 , y1 ) , ... , ( xn , yn ) 

(3) ( x1 , y1   , ... ,   xn , yn ) 

(4)  x1 , y1   , ... ,   xn , yn   

这里的点是组成多边形边界的线段的端点。

    多边形数据在输出使用第一种语法。

6.8.6圆(circle)

    圆由一个圆心和一个半径表示。 circle 的值用下面语法定义:

(1)< ( x , y ) , r >

(2)( ( x , y ) , r )

(3) ( x , y ) , r 

(4) x , y   , r 

这里的 (x,y) 是圆心,而r圆的半径。

    圆的数据在输出时使用第一种格式。

猜你喜欢

转载自www.cnblogs.com/zhaoyanhaoBlog/p/10613043.html