adhikar patil Ответов: 1

Как разделить этот lattiude в SQL сервере


Привет,
Я храню lattitude в sql server в следующем формате, например 12°20'30". Но сейчас я хочу разделить широты в SQL Server, как и 12 град 20 мин 30 сек. Пожалуйста, предоставьте мне решение

Что я уже пробовал:

Hello,
              I am storing lattitude in sql server as below format like 12°20'30". But now i want to split the lattitude in sql server like 12 DEG 20 MIN 30 SEC. Please provide me the solution

RedDk

Хорошо,

Возможно, я бы перефразировал OG в решении 1, заявив, что, не зная, на какую версию SQL Server вы нацеливаетесь, сказал бы что-то вроде: "в SQL Server 2008 есть лучшее, а также встроенное хранилище геопространственных данных, которое предоставляет десятичные операции долготы/широты, не беспокоя ручные вычисления haversine. К которому вы направляетесь, используя приведенные выше входные строковые представления NVARCHAR/VARCHAR"

Хотя на самом деле ты не на заборе. Поэтому не делайте того, что говорит ОГ в своей избранной пасте, только потому, что он говорит не делать этого.

1 Ответов

Рейтинг:
1

OriginalGriff

Не делайте этого в SQL: хотя это возможно, это очень грязно:

SELECT REPLACE(REPLACE(REPLACE(ColumnNameContainingLattitude, N'°', N' DEG ' ), N'''', ' MIN '), N'"', ' SEC') FROM MyTable

Либо сделайте это в своем программном обеспечении для презентаций, либо лучше сохраните его в виде трех целочисленных значений LatDegrees, LatMinutes и LatSeconds вместо одной строки, а затем используйте их для создания своей строки.