2012-07-10 9 views
7

Estoy tratando de generar algunos registros ficticios en MySQL y necesito crear valores aleatorios de latitud y longitud dentro de un rango determinado.Generando latitud aleatoria y longitutde en MySQL

Por ejemplo necesito para generar las latitudes que se encuentran entre 52.077090052913654 52.477040512464626 y

y las longitudes entre -1.8840792500000134 y -0.9172823750000134

Estoy familiarizado con la creación de rangos de números aleatorios usando Rand piso, pero que sólo lo hará producir números enteros. ¿Alguna idea sobre cómo podría hacer esto?

Respuesta

9

Puede utilizar RAND() para obtener un valor aleatorio entre dos valores, así:


randVal = (RAND() * (maxVal - minVal)) + minVal


Con sus números:

SELECT 
    (RAND() * (52.477040512464626 - 52.077090052913654)) + 52.077090052913654 AS randlatitude, 
    (RAND() * (-0.9172823750000134 - -1.8840792500000134)) + -1.8840792500000134 AS randlongitude 
+0

Muchas gracias por su ayuda a Zane, eso es genial. – BarfordSimon

Cuestiones relacionadas