可以使用字元串varchar,然後取出數據之後將字元串轉化為double類型或float類型
可以存儲這些經/緯度數據,如波紋管 -
$arr = array("13.692941, 100.750723",
"13.70649,100.75405999999998",
"13.71334,100.75428999999997",
"13.72268,100.74638000000004");
// serialize data before save to database, you should deserialized that when you will use this data after query.
$serializedArr = serialize($arr);
insert into geom (g) values ("{$serializedArr}");
❷ 精通sql 的大俠們,問一下怎麼存儲經緯度。
在sql中存圖片,一般是存儲圖片的指定的編號,編號一般是由兩部分組成,一部分是圖片名,另一部分是就是唯一索引號,這樣做是為了避免圖片的主鍵的重復,圖片就放在指定的文件加中,每次顯示圖片時,先找圖片存放文件夾路徑,再找資料庫中的文件名。不知道你會不會懂我的意思。存儲經緯度用numeric型沒有錯,在編程時再把度加上去,不過也可以用String這是不科學的。
❸ sql server geometry轉換成經緯度
Table中有geometry類型的一列名為geom,新增geography類型的空列名為geog
[sql] view plain
update [Table]
set geog = geography::STGeomFromText([geom].STAsText(),4326)
❹ 在百度地圖中確定一個點,然後保存下經緯度,存至資料庫,怎麼實現呢還有讀取的時候顯示標注的這個店的地圖
//添加標記點擊監聽
marker.addEventListener("click", function (e) {
gc.getLocation(e.point, function (rs) {
showLocationInfo(e.point, rs);
});
});
map.centerAndZoom(point, 15); //設置中心點坐標和地圖級別
map.addOverlay(marker); //將標記添加到地圖中
❺ sql怎麼將一系列點經緯度坐標匹配到某市
ORACLE獲取數據,根據定位的數據,計算用戶的經緯度。
根據經緯度計算地球上兩點之間的距離的SqlServer函數,單位是千米。mysql距離計算,單位m,以及排序lon經度,lat緯度,一般地圖上顯示的坐標順序為,緯度在前(范圍-90~90),經度在後(范圍-180~180),首先新建一張表,裡麵包含經緯度。
結構化查詢語言是高級的非過程化編程語言,允許用戶在高層數據結構上工作。它不要求用戶指定對數據的存放方法,也不需要用戶了解具體的數據存放方式,所以具有完全不同底層結構的不同資料庫系統,可以使用相同的結構化查詢語言作為數據輸入與管理的介面。結構化查詢語言語句可以嵌套,這使它具有極大的靈活性和強大的功能。
❻ sql (mysql)實現查詢某一個經緯度周圍500米距離的餐館,資料庫存放所有餐館的經緯度。
樓上回答的不詳細,代碼如下,正巧我做到相關項目,雖然回答有點晚,但是為了幫助後續搜索的人。。。
$user_lat='41.749034'; //傳過來的緯度
$user_lng='123.46017';//傳過來的經度
$store_mod=db("store"); //資料庫
$storelist=$store_mod->query("SELECT *,ROUND(6378.138*2*ASIN(SQRT(POW(SIN((".$user_lat."*PI()/180-【store_latitude】*PI()/180)/2),2)+COS(".$user_lat."*PI()/180)*COS(【store_latitude】*PI()/180)*POW(SIN((".$user_lng."*PI()/180-【store_longitude】*PI()/180)/2),2)))*1000) AS distance FROM store HAVING 【搜索條件如 state=1】 distance<【周圍距離多少米 如 500】 ORDER BY distance ASC");
var_mp($storelist);
【】sql語句中括弧的store_latitude,store_longitude為你資料庫存的商家經緯度的欄位名,其餘的為注釋
❼ sql語句怎麼寫算坐標經緯度之間的距離我是mysql資料庫。 請詳細點!謝謝!
這單用SQL語句是辦不到的吧
應該先把坐標從資料庫中取出,再用三角函數計算。
或者在存入資料庫之前,先把距離計算出來,一並存入。
❽ sql (mysql)怎麼實現查詢某一個經緯度周圍500米距離的餐館,資料庫存放所有餐館的經緯度
回答的有點晚,正好我做到相關的項目了,希望能幫到其他人.
餐館申請時候通過填寫的地址取得經緯度存入資料庫,下面是查詢某個經緯度附近500米的
$user_lat='41.749034'; //傳過來的緯度
$user_lng='123.46017';//傳過來的經度
$store_mod=db("store"); //資料庫
$storelist=$store_mod->query("SELECT
*,ROUND(6378.138*2*ASIN(SQRT(POW(SIN((".$user_lat."*PI()/180-【store_latitude】*PI()/180)/2),2)+COS(".$user_lat."*PI()/180)*COS(【store_latitude】*PI()/180)*POW(SIN((".$user_lng."*PI()/180-【store_longitude】*PI()/180)/2),2)))*1000)
AS distance FROM store HAVING 【搜索條件如 state=1】 distance<【周圍距離多少米 如
500】 ORDER BY distance ASC");
var_mp($storelist);
【】sql語句中括弧的store_latitude,store_longitude為你資料庫存的商家經緯度的欄位名,其餘的為注釋
❾ 請問想往SQL SERVE的表裡加經緯度的列,那麼是什麼類型的數據啊
float是肯定不行的,是記錄不了字元的,你有兩種方式可以處理:
第一:字元型,比如45.3°,就是直接記錄字元型;不過這樣的話,你如果要用到一些計算,比較的話那就比較麻煩了,因為字元串用於計算和比較是很麻煩的,你比如要想查詢經度大於45°的就比較難處理了;
另一種,就是數字型,numeric(18,2),記錄兩位小數,你的那個°符號在前台寫,也就是要這個符號的地方直接寫在前台,不要記錄在資料庫中,因為這個實際上記錄在資料庫中也沒有多大的實際意義;
你如果想在前台出來的話,在查詢語句中可以這樣子寫
select convert(varchar(20),經度或緯度欄位)+'°'就可以了,不知我的理解是否正確。有些東西需要資料庫與前台的共同配合的。
❿ mysql存儲地圖經緯度的表怎麼設計
可以設計兩張關聯表 一個用來保存信息 一個用來保存X.Y點的信息 或者Mysql也支持空間數據,Geometry類型即可。
若有問題,請您及時追問我
若滿意,請您及時採納
謝謝您的關照~