我在我们的一个系统中将 GIS 坐标作为小数存储在我们的一个系统中。但是,我想将它们显示为度:分钟:秒。我尝试了谷歌搜索,但找不到任何SQL内容。有人可以帮我吗?
CREATE TABLE gis
(
latitude DECIMAL(13, 10)
);
INSERT INTO gis
SELECT -95.8833333000
UNION ALL
SELECT 32.5530555550
UNION ALL
SELECT -163.3000000000
谢谢!
我能够根据这个博客做到这一点。希望这对将来的某人有所帮助。
SELECT [Latitude] AS [Latitude],
CAST([Latitude] AS INT) AS [Degrees],
REPLACE(CAST(([Latitude] - CAST([Latitude] AS INT)) * 60 AS INT), '-', '') AS [Minutes],
REPLACE(CAST((3600 * ([Latitude] - CAST([Latitude] AS INT))) - (CAST(([Latitude] - CAST([Latitude] AS INT)) * 60 AS INT) * 60) AS INT), '-', '') AS [Seconds]
FROM gis