【问题标题】:Generating random latitude and longitude in MySQL在 MySQL 中生成随机经纬度
【发布时间】:2012-07-09 21:47:18
【问题描述】:
我正在尝试在 MySQL 中生成一些虚拟记录,需要在给定范围内创建随机纬度和经度浮点值。
例如,我需要生成介于 52.077090052913654 和 52.477040512464626 之间的纬度
和 -1.8840792500000134 和 -0.9172823750000134 之间的经度
我熟悉使用 Rand Floor 创建随机数范围,但这只会产生整数。我该怎么做?
【问题讨论】:
标签:
mysql
random
floating-point
【解决方案1】:
您可以使用RAND() 来获取两个值之间的随机值,如下所示:
randVal = (RAND() * (maxVal - minVal)) + minVal
用你的号码:
SELECT
(RAND() * (52.477040512464626 - 52.077090052913654)) + 52.077090052913654 AS randlatitude,
(RAND() * (-0.9172823750000134 - -1.8840792500000134)) + -1.8840792500000134 AS randlongitude