可以使用字符串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类型即可。
若有问题,请您及时追问我
若满意,请您及时采纳
谢谢您的关照~