Convertir grados decimales en grado-minuto-segundo en MySQL

Es muy común usar PHP (o ASP, JavaScript, etc…) para convertir grados decimales (DD) a grado-minuto-segundo (DMS) en proyectos web. Sin embargo, cuando las coordenadas están almacenadas en una base de datos, es posible hacer esta conversión en la base de datos misma cuando se ejecuta una consulta, lo que simplifica el código de las páginas web.

Aquí está una función de MySQL para convertir los grados decimales en grado-minuto-segundo:

Esta función se guardará en la base de datos activa (visible en la lista de rutinas, en MySQL Workbench) y se puede usar de la misma manera que cualquier otra función de MySQL:

f_convertDDtoDMS(DD, is_longitude)
DD: Coordenada en grados decimales.
is_longitude: true si el valor representa una longitud; asginarle false si el valor es una latitud.

Aquí está un ejemplo de consulta y su resultado:

También se puede ejecutar la función desde otra base de datos, haciéndole referencia de la misma manera que para las tablas:
nombre_base_de_datos.f_convertDDtoDMS(DD, is_longitude)

Leave a comment