2010-11-19 3 views
0

Почему это работаетSQL География обработка строк

select geography::STGeomFromText('POINT(-77.010996 38.890358)',4326) 

но это не

declare @Latitude decimal(9,6) = 38.890358 
declare @Longitude decimal(9,6) = -77.010996 

select geography::STGeomFromText('''POINT(' + 
cast(@Longitude as nvarchar(15)) + ' ' + 
cast(@Latitude as nvarchar(15)) +')''',4326) 

Что я упускаю, они, кажется, эффективно будет то же самое.

ответ

4

Избавиться от лишних кавычек в начале и в конце

declare @Latitude decimal(9,6) = 38.890358 
declare @Longitude decimal(9,6) = -77.010996 

select geography::STGeomFromText('POINT(' + 
cast(@Longitude as nvarchar(15)) + ' ' + 
cast(@Latitude as nvarchar(15)) +')',4326) 
+0

ничего себе, я чувствую себя дураком. Спасибо, только один из тех моментов мозга. – keithwarren7

Смежные вопросы