Re: [MySQL ] 所在位置

看板Database作者 (肯先生)時間14年前 (2009/10/15 21:05), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串4/4 (看更多)
回給原 po 囉~ 怎麼存位置?我建議是多多用 command line 了解一下特性,再著手使用。例如說要 存一個長方形,可以先這樣看: mysql> SELECT AsText(Envelope(GeomFromText('LineString(1 1,5 5)'))); +-------------------------------------------------------+ | AsText(Envelope(GeomFromText('LineString(1 1,5 5)'))) | +-------------------------------------------------------+ | POLYGON((1 1,5 1,5 5,1 5,1 1)) | +-------------------------------------------------------+ 1 row in set (0.00 sec) 這個長方形的端點兩端的座標是 1 1 和 5 5,用 Envelope 封起來,就會變成一個長 方形,四個點的座標就是 SELECT 出來的結果。 當然也可以直接存 GeomFromText('POLYGON((1 1,5 1,5 5,1 5,1 1))') 加上 AsText 是把結果給人看,要存到 db 裡面,就把 AsText 拿掉。 點 2 2 有沒有在長方形裡面? mysql> SELECT MBRContains(Envelope(GeomFromText('LineString(1 1,5 5)')),GeomFromText('POINT(2 2)')) AS ret; +------+ | ret | +------+ | 1 | +------+ 1 row in set (0.00 sec) 點 8 8 沒有沒有在長方形裡面? mysql> SELECT MBRContains(Envelope(GeomFromText('LineString(1 1,5 5)')),GeomFromText('POINT(8 8)')) AS ret; +------+ | ret | +------+ | 0 | +------+ 1 row in set (0.00 sec) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.166.132.26

10/16 00:59, , 1F
感謝你
10/16 00:59, 1F
文章代碼(AID): #1ArnuXMh (Database)
文章代碼(AID): #1ArnuXMh (Database)