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圓的半徑。

    圓的數據在輸出時使用第一種格式。

 


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com