当前位置: 首页 > 知识库问答 >
问题:

8位小数的纬度/经度应该使用什么MySQL数据类型?

况胡媚
2023-03-14

我正在处理地图数据,并且< code >纬度/经度扩展到8个小数位。例如:

Latitude 40.71727401
Longitude -74.00898606

我在谷歌文档中看到它使用:

lat FLOAT( 10, 6 ) NOT NULL,  
lng FLOAT( 10, 6 ) NOT NULL

但是,它们的小数位数只到6位。< br >我应该使用< code>FLOAT(10,8)还是考虑使用其他方法来存储此数据,以确保其准确性。它将用于地图计算。谢谢!

共有3个答案

丌官寒
2023-03-14

此外,您将看到< code>float值被舍入。

// e.g: given values 41.0473112,29.0077011

float(11,7) | decimal(11,7)
---------------------------
41.0473099  | 41.0473112
29.0077019  | 29.0077011

廉子民
2023-03-14

在laravel中,使用十进制列类型进行迁移

$table->decimal('latitude', 10, 8);
$table->decimal('longitude', 11, 8);

有关更多信息,请参见可用的列类型

叶俊郎
2023-03-14

MySQL支持Spatial数据类型,<code>Point</code>是可以使用的单值类型。例子:

CREATE TABLE `buildings` (
  `coordinate` POINT NOT NULL,
  /* Even from v5.7.5 you can define an index for it */
  SPATIAL INDEX `SPATIAL` (`coordinate`)
) ENGINE=InnoDB;

/* then for insertion you can */
INSERT INTO `buildings` 
(`coordinate`) 
VALUES
(POINT(40.71727401 -74.00898606));
 类似资料:
  • 问题内容: 我正在处理地图数据,并且扩展到了8个小数位。例如: 我在Google文档中看到了 使用: 但是,它们的小数位只能移到6。 我应该使用还是应该考虑使用另一种方法来存储此数据,以便精确。它将与地图计算一起使用。谢谢! 问题答案: DECIMAL是用于精确算术的MySQL数据类型。与FLOAT不同,它的精度对于任何大小的数字都是固定的,因此通过使用它而不是FLOAT,可以在进行某些计算时避免

  • 问题内容: 请记住,我将在经/纬对上执行计算,哪种数据类型最适合与MySQL数据库一起使用? 问题答案: 在GIS中使用MySQL的空间扩展。

  • 本文向大家介绍Android获取当前位置的经纬度数据,包括了Android获取当前位置的经纬度数据的使用技巧和注意事项,需要的朋友参考一下 现在有这么一个需求:开启一个Service服务,获取当前位置的经纬度数据,将获取的数据以广播的方式发送出去,注册广播的Activity接收广播信息,并将接收到的数据在当前Activity显示,如果当前位置发生变化,经纬度数据改变,获取改变后的经纬度数据,通过H

  • 问题内容: 我正在使用SQL Server 2008数据库的应用程序上工作。在此数据库中,我有一个名为Session的表,该表具有两个字段经度和纬度,用于指示用户的位置。在另一个名为Zone的表上,我有一个area属性,它是几何类型的。如何检查用户的经度和纬度坐标是否属于某个几何? 谢谢 问题答案: 您有一个将几何形状存储在欧几里得几何形状中的几何图形,并且想要将地球上由纬度和经度表示的点与之相关

  • 问题内容: 我想从下面的数据库表中找到最近的位置 我已经从Google地图中获取了所有数据。在这里,我必须找到一个地方最近的位置。假设我在Surkhet地方,其纬度为28.6,经度为81.6,如何找到距Surkhet地方最近的地方。 问题答案: 这是最好的查询

  • 问题内容: 我想将位置的纬度和经度值存储在mysql数据库表中。考虑到未来,我将希望能够在特定位置的特定半径内找到这些位置。话虽如此,我应该将纬度和经度值存储在哪些数据类型中?请给我提供一个用于创建列的创建表脚本,如下所示: 上表中是否可能缺少我会为我提供当前可能看不到的其他信息的列? 谢谢你的帮助。 问题答案: 您应将这些点存储在数据类型的单列中,该列可以用索引建立索引(如果表类型为): 这将大