簡體   English   中英

SQL Geography數據類型,如何使用它包含的亂碼?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM