Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

SQL Server - Od długości i szerokości geograficznej do typu danych geometrii

Masz geometrię, która przechowuje kształt w geometrii euklidesowej i chcesz skojarzyć z nią punkt na kuli ziemskiej, reprezentowany przez szerokość i długość geograficzną, aby zobaczyć, czy znajduje się w środku. To nie zadziała ze względu na sposób, w jaki SQL przechowuje dane. Aby to sprawdzić, prawdopodobnie musisz użyć typów danych Geografia — szerokość i długość geograficzna to punkty na kuli (właściwie dane geodezyjne, ponieważ Ziemia nie jest do końca kulą).

Aby uzyskać więcej informacji o tym, dlaczego są różne, zobacz to wyjaśnienie firmy Microsoft . Również ta odpowiedź na stackoverflow:GEOMETRIA i GEOGRAFIA różnica SQL Serwer 2008

Aby przekonwertować dane z geometrii na geografię, spróbuj:Geography::STGeomFromText(cast(GeomCol as varchar(max)), 4326)

Następnie możesz użyć STIntersects metoda udokumentowana przez firmę Microsoft tutaj .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server - Jednoczesne wstawianie do tabeli od wielu klientów - Sprawdź limit i blokuj

  2. Używanie wyzwalacza do symulowania drugiej kolumny tożsamości w SQL Server 2005

  3. Ogranicz dostęp użytkowników do tabeli za pomocą SQL Server 2008

  4. 5 składni SQL i zasad zapytań dla lepszego monitorowania baz danych

  5. Jeśli nie istnieje, nie działa w SQL CE