欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mysql中point的使用詳解

 更新時間:2023年07月28日 09:26:42   作者:Mcband  
MySQL的point函數(shù)是一個用于處理空間坐標(biāo)系的函數(shù),它可以將兩個數(shù)值作為參數(shù),返回一個Point對象,這篇文章主要介紹了mysql中point的使用,需要的朋友可以參考下

前言

MySQL中的point用于表示GIS中的地理坐標(biāo),在GIS中廣泛使用,本文主要講解point類型的簡單使用

一.創(chuàng)建帶有point類型的表格

CREATE TABLE `test-point` (
	  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '序號',
	  `point` point NOT NULL COMMENT '經(jīng)緯度',
	  `text` varchar(50) DEFAULT NULL COMMENT '描述',
	  PRIMARY KEY (`id`)
	) ENGINE=MyISAM AUTO_INCREMENT=10 DEFAULT CHARSET=utf8mb4;

二.添加數(shù)據(jù)

INSERT INTO `test-point` ( point,text ) VALUES ( st_GeomFromText ( 'POINT(1 1)' ),'第1個點(diǎn)');
INSERT INTO `test-point` ( point,text ) VALUES ( st_PointFromText  ( 'POINT(2 2)' ),'第2個點(diǎn)');

注意:其中st_GeomFromText ,st_PointFromText 是將字符串轉(zhuǎn)換成point類型的數(shù)據(jù),這兩個都可以,其中st_GeomFromText 是父級,st_PointFromText 是子級.

三.查詢數(shù)據(jù)

SELECT id,st_x(point) x,st_y(point) y,point,text FROM `test-point`
update `test-point` set point=st_GeomFromText('POINT(6 6)') where id =10;

注意:st_x(point)是獲取POINT(1 2)中的1,st_y(point)是獲取POINT(1 2)中的2,st_AsText(point)是將point類型轉(zhuǎn)換成字符串.

四.更新數(shù)據(jù)

update `test-point` set point=st_PointFromText('POINT(5 5)') where id =10;
update `test-point` set point=st_GeomFromText('POINT(6 6)') where id =10;

五.查詢一個點(diǎn)與數(shù)據(jù)庫其他點(diǎn)之間的距離

SELECT
	id,
	st_x ( point ) latitude,
	st_y ( point ) longitude,
	round(( ST_DISTANCE_SPHERE ( st_GeomFromText ( 'POINT (1 1)' ), point )), 1 ) AS distance 
FROM
	`test-point`

注意:st_distance_sphere函數(shù)是將坐標(biāo)距離轉(zhuǎn)換成米也可以使用st_distancest_distance_sphere函數(shù)的計(jì)算結(jié)果要比st_distance轉(zhuǎn)換為米的結(jié)果更精確。本人測試st_distance函數(shù)發(fā)現(xiàn),隨著點(diǎn)與點(diǎn)之間的距離增加誤差越來越大.

六.查詢一個點(diǎn)為圓心,方圓2000米內(nèi)的數(shù)據(jù)

SELECT
	id,
	st_x ( point ) latitude,
	st_y ( point ) longitude,
	round(( ST_DISTANCE_SPHERE ( st_GeomFromText ( 'POINT (1 1)' ), point )), 1 ) AS distance 
FROM
	`test-point`
HAVING 
	distance <=2000

注意

  • Mysql5.7版本的語法不需要加"st_"這個前綴
  • POINT(經(jīng)度,緯度) 經(jīng)度和緯度不要寫反,5.7查詢不到結(jié)果,8.0版本查詢?yōu)榱?因?yàn)榻?jīng)度范圍是 -180°-180°,緯度是-90°-90°,如果寫反,緯度會超出范圍,導(dǎo)致報(bào)錯
  • POINT類型里面單位是小數(shù),不是度.POINT(12.1 14.6),可以看我以前的文章經(jīng)緯度度數(shù)和小數(shù)之間的轉(zhuǎn)化

到此這篇關(guān)于mysql中point的使用的文章就介紹到這了,更多相關(guān)mysql point使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL版oracle下scott用戶建表語句實(shí)例

    MySQL版oracle下scott用戶建表語句實(shí)例

    這篇文章主要給大家介紹了關(guān)于MySQL版oracle下scott用戶建表語句的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • MySQL簡化輸入小技巧

    MySQL簡化輸入小技巧

    在這里我將介紹兩個使用MySQL數(shù)據(jù)庫時候簡化輸入的小技巧。
    2011-09-09
  • MySQL服務(wù)維護(hù)筆記

    MySQL服務(wù)維護(hù)筆記

    MySQL服務(wù)維護(hù)筆記...
    2006-12-12
  • Mysql8.0輕松實(shí)現(xiàn)主從復(fù)制

    Mysql8.0輕松實(shí)現(xiàn)主從復(fù)制

    這篇文章主要介紹了Mysql8.0輕松實(shí)現(xiàn)主從復(fù)制方法的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • MySQL慢查詢?nèi)罩驹斀馀c性能優(yōu)化指南(總結(jié))

    MySQL慢查詢?nèi)罩驹斀馀c性能優(yōu)化指南(總結(jié))

    慢查詢?nèi)罩臼荕ySQL數(shù)據(jù)庫性能優(yōu)化的重要工具,通過分析慢查詢?nèi)罩?我們可以識別和解決那些影響數(shù)據(jù)庫性能的瓶頸問題,這篇文章主要介紹了MySQL慢查詢?nèi)罩驹斀馀c性能優(yōu)化指南,需要的朋友可以參考下
    2024-07-07
  • MySQL 獲得當(dāng)前日期時間 函數(shù)

    MySQL 獲得當(dāng)前日期時間 函數(shù)

    這篇文章主要介紹了MySQL 獲得當(dāng)前日期時間 函數(shù) 非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-07-07
  • golang實(shí)現(xiàn)mysql數(shù)據(jù)庫備份的操作方法

    golang實(shí)現(xiàn)mysql數(shù)據(jù)庫備份的操作方法

    這篇文章主要介紹了golang實(shí)現(xiàn)mysql數(shù)據(jù)庫備份的操作方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-06-06
  • mysql密碼正確無法登陸(host的問題)

    mysql密碼正確無法登陸(host的問題)

    本文主要介紹了mysql密碼正確無法登陸(host的問題),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • 解讀sql中timestamp和datetime之間的轉(zhuǎn)換

    解讀sql中timestamp和datetime之間的轉(zhuǎn)換

    這篇文章主要介紹了解讀sql中timestamp和datetime之間的轉(zhuǎn)換方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • MySQL?UPDATE多表關(guān)聯(lián)更新的實(shí)現(xiàn)示例

    MySQL?UPDATE多表關(guān)聯(lián)更新的實(shí)現(xiàn)示例

    MySQL可以基于多表查詢更新數(shù)據(jù),本文主要介紹了MySQL?UPDATE多表關(guān)聯(lián)更新的實(shí)現(xiàn)示例,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-08-08

最新評論