2010-11-19 63 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 2010-11-19 21:40:51