我使用的是MySQL版本:5.7.22
我有两列纬度和经度,都是度/分/秒格式,我想转换成十进制格式,例如:
48° 52.250' N
到
48.93611111
我有下面的脚本,但我被困在如何分割度分和秒。我不能像这里那样硬编码这些值
left(Latitude,2)
因为学位也可能有3个小数
SELECT Latitude,
left(Latitude, 2) +
(TRUNCATE((Latitude - TRUNCATE(Latitude)) * 100) / 60) +
(((Latitude * 100) - TRUNCATE(Latitude * 100)) * 100) / (60 * 60) AS DECIMAL_DEGREES
FROM small_ocean_data
换算公式如下:
D + M/60 + S/3600 * -1 if direction in ['W', 'S'] else 1
任何帮助都将不胜感激!