***mysql中经度纬度字段用什么存储(关于mysql的float和decimal区别)
|
float,double容易产生误差,对精确度要求比较高时,建议使用decimal来存,decimal在mysql内存是以字符串存储的, 用于定义货币要求精确度高的数据。在数据迁移中,float(M,D)是非标准定义,最好不要这样使用。M为精度,D为标度。 |
mysql> create table t1(c1 float(10,2), c2 decimal(10,2),c3 float); // 10不包括小数点
mysql> insert into t1 values(1234567.23, 1234567.23,1234567.23);
mysql> select * from t1;
数据显示与所用的客户端工具有关
1.在Toad for MySQL中的显示为
c1 c2 c3
1234567 1234567.23 1234570
2.在MySQL Query Browser中的显示为
c1 c2 c3
1234567.25 1234567.23 1.23457e+006
3.程序中取出数据
1234567 1234567.23 1234570
mysql> insert into t1 values(9876543.21, 9876543.12,9876543.21);
1.在Toad for MySQL中的显示为
c1 c2 c3
9876543 9876543.12 9876540
2.在MySQL Query Browser中的显示为
c1 c2 c3
9876543.00 9876543.12 9.87654e+006
3.程序中取出数据
9876543 9876543.12 9876540
mysql> insert into t1 values(1.21, 1.12,1.21);
1.在Toad for MySQL中的显示为
c1 c2 c3
1.21 1.12 1.21
2.在MySQL Query Browser中的显示为
c1 c2 c3
1.21 1.12 1.21
3.程序中取出数据
1.21 1.12 1.21
mysql> insert into t1 values(1.2, 1.2,1.2);
1.在Toad for MySQL中的显示为
c1 c2 c3
1.2 1.20 1.2
2.在MySQL Query Browser中的显示为
c1 c2 c3
1.20 1.20 1.2
3.程序中取出数据
1.2 1.20 1.2
mysql> insert into t1 values(9876543.216, 9876543.126,9876543.216);
1.在Toad for MySQL中的显示为
c1 c2 c3
9876543 9876543.13 9876540
2.在MySQL Query Browser中的显示为
c1 c2 c3
9876543.00 9876543.13 9.87654e+006
3.程序中取出数据
9876543 9876543.13 9876540
mysql> insert into t1 values(1.216, 1.126,1.216);
1.在Toad for MySQL中的显示为
c1 c2 c3
1.22 1.13 1.216
2.在MySQL Query Browser中的显示为
c1 c2 c3
1.22 1.13 1.216
3.程序中取出数据
1.22 1.13 1.216
不定义fload, double的精度和标度时,存储按给出的数值存储,这于OS和当前的硬件有关。
decimal默认为decimal(10,0)
因为误差问题,在程序中,少用浮点数做=比较,可以做range比较。如果数值比较,最好使用decimal类型。
精度中,符号不算在内:
mysql> insert into t1 values(-98765430.21, -98765430.12);
mysql> select * from t1;
c1 c2
-98765432.00 -98765430.12
***mysql中经度纬度字段用什么存储(关于mysql的float和decimal区别)的更多相关文章
- 【整理】mysql中information_schema.tables字段说明
[整理]mysql中information_schema.tables字段说明 2016-05-04 16:47:50| 分类: 默认分类|举报|字号 订阅 下载LOFTER我的照片书 | ...
- mysql中的null字段值的处理及大小写问题
在MySQL中,NULL字段的处理,需要注意,当在处理查询条件中有NULL,很有可能你得到的值不是想要的,因为,在MySQL中,判断NULL值相等(=)或者不等(!=)都会返回false.主要出现在常 ...
- Mysql中自增字段(AUTO_INCREMENT)的一些常识
Mysql中自增字段(AUTO_INCREMENT)的一些常识: http://chengxuyuan.naxieshir.com/fenlei/2/p/151.html
- MySQL 中的反引号(`):是为了区分 MySql 关键字与普通字符而引入的符号;一般,表名与字段名都使用反引号。
MySQL 中的反引号(`):是为了区分 MySql 关键字与普通字符而引入的符号:一般,表名与字段名都使用反引号.
- mysql中查询一个字段属于哪一个数据库中的哪一个表的方式
mysql中查询一个字段具体是属于哪一个数据库的那一张表:用这条语句就能查询出来,其中 table_schema 是所在库, table_name 是所在表 --mysql中查询某一个字段名属于哪一个 ...
- Thinkphp中查询复杂sql查询表达式,如何表达MYSQL中的某字段不为空is not null?
Thinkphp中查询复杂sql查询表达式,如何表达MYSQL中的某字段不为空is not null?先上两种实现方式的实例:$querys["house_type_image"] ...
- mysql中根据一个字段相同记录写递增序号,如序号结果,如何实现?
mysql中根据一个字段相同记录写递增序号,如序号结果,如何实现? mysql中实现方式如下: select merchantId, NameCn, send_date, deliver_name ...
- MySQL中的存储过程、游标和存储函数
MySQL中的存储过程首先来看两个问题: 1.什么是存储过程? 存储过程(Stored Procedure)是在数据库系统中,一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存 ...
- mysql中information_schema.views字段说明
1.查看视图并不是查询视图数据,而是查看数据库中已经存在的视图的定义,查看视图必须要有SHOW VIEW权限,MySQL的数据库下的user表中存储这这个数据.查看视图的方法有:DESCRIBE,SH ...
随机推荐
- params参数的调用
namespace params参数的用法 { class Program { public static void Test(string name,params int[] score) { ; ...
- vagrant up时提示 Authentication failure. Retrying
vagrant up时提示 Authentication failure. Retrying 如图,启动时就报这个错误,virtualbox启动正常 用vagrant的账号密码也可以登录 就是不能使用 ...
- 初学structs2,表单验证
一.简单表单验证示例 structs.xml配置 <struts> <package name="validate" namespace="/valid ...
- 将对象转为数组方法:延伸array_map函数在PHP类中调用内部方法
public static function objectToArray($d) { if (is_object($d)) { $d = get_object_vars($d); } if (is_a ...
- IDS IPS WAF之安全剖析
现在市场上的主流网络安全产品可以分为以下几个大类: 1.基础防火墙类,主要是可实现基本包过滤策略的防火墙,这类是有硬件处理.软件处理等,其主要功能实现是限制对IP:port的访问.基本上的实现都是默认 ...
- dao、domain、service、web、vo、Model这些层的功能是什么
这些层次都是用来管理不同的代码,让代码具有更好的维护性.开发中一般采用三层架构即MVC的模式来进行开发,M:代表model,可以理解为javaBean:V:代表view,可以理解为jsp:c:代表co ...
- 将DataTable导出为Excel C#
/// <summary> /// 导出Excel /// </summary> /// <param name="dt">DataTable& ...
- IOS: 使用imageIO获取和修改图片的exif信息
使用imageIO获取和修改图片的exif信息 一幅图片除了包含我们能看见的像素信息,背后还包含了拍摄时间,光圈大小,曝光等信息.UIImage类将这些细节信息都隐藏了起来,只提供我们关心的图片尺寸, ...
- [Effective JavaScript 笔记] 第13条:使用立即调用的函数表达式创建局部作用域
function wrapElements(a){ var res=[],i,n; for(i=0,n=a.length;i<n;i++){ res[i]=function(){return a ...
- [LA4108]SKYLINE
[LA4108]SKYLINE 试题描述 The skyline of Singapore as viewed from the Marina Promenade (shown on the left ...