[英]SQL Geography data type, how to use the gibberish it contains?
我正在查看sql地理數據類型,它看起來不是很直觀,並且我沒有在上面找到很多好的(或“容易理解”的)信息。 例如((部分取自我發現很少談論它的站點):
INSERT INTO [dbo].[visitorLocationInfo](id, test)
VALUES(3,
geography::STPointFromText('POINT(55.9523783996701 -3.2051030639559)', 4326)
);
我得到第一個是經度,第二個是長,但是( 4326
)的第三個值是什么,我應該如何處理它輸入的結果?
id latitude longitude zip city state country test
3 NULL NULL NULL NULL NULL NULL 0xE6100000010CF9FF3F130DA409C0FDFF0F89E7F94B40
這個長號不太可讀...
也許我只需要有人花5分鍾時間給我帶來鎳之旅?
我對此並不熟悉,但是您似乎可以在列上調用ToString
來獲取文本表示形式:
select test.ToString()
from tableName
地理數據類型實現為CLR類型。 意味着它的行為就像來自編程世界的對象。 這樣,您可以在其上調用各種方法 。 您所看到的是對象的十六進制表示形式。
回答有關距離等問題時,您是對的。 如果您有一個表格,其中的地理位置類型為一列,則可以執行以下操作:
declare @g geography =
geography::STPointFromText(
'POINT(55.9523783996701 -3.2051030639559)', 4326
).STBuffer(5);
select *
from dbo.yourTable
where gCol.STIntersects(@g) = 1
上面寫着“獲取dbo.yourTable中的所有行,其中gCol列中包含的地理對象的某些部分位於55.9523783996701 -3.2051030639559的5米范圍內”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.