У меня есть столбец географии под названием «Местоположение». Мне нужно ВЫБРАТЬ Location.Lat и Location.Long как один результат VARCHAR. Используя следующее, я теряю точность:
Запрос:
SELECT CONVERT(VARCHAR(MAX), Location.Lat) + ' ' + CONVERT(VARCHAR(MAX), Location.Long)
Исходное местоположение. Широта:
52.2708633333333
Исходное местоположение. Длинный:
-9.73093666666667
Форма результатов выше:
52.2709 -9.73094
Я понимаю, что это связано с тем, что Lat и Long являются плавающими и не имеют указанной точности, поэтому возможным обходным путем было бы сначала заставить его десятичное число с указанной точностью, а затем преобразовать его в varchar. Это кажется..... неуклюжим, и необходимость выбирать случайную точность заставит либо
(a) потеря конечных значений, если они слишком малы или
(b) дополнительные ненужные конечные значения.
Пожалуйста, скажите мне, что мне не хватает функции или метода преобразования, чтобы вернуть их как точные представления varchar!