Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

SQL Server - Từ kinh độ và vĩ độ đến kiểu dữ liệu hình học

Bạn có một hình học, lưu trữ một hình dạng trong hình học Euclid và bạn muốn liên kết một điểm trên quả địa cầu, được biểu thị bằng vĩ độ và kinh độ, với nó, để xem nó có nằm bên trong không. Điều này sẽ không hoạt động, do cách SQL lưu trữ dữ liệu. Bạn có thể cần sử dụng các kiểu dữ liệu Địa lý để kiểm tra điều này - Vĩ độ và kinh độ là các điểm trên một hình cầu (Thực tế là dữ liệu trắc địa, vì trái đất không phải là một hình cầu.)

Để biết thêm thông tin về lý do tại sao chúng khác nhau, hãy xem giải thích này từ microsoft . Cũng câu trả lời này trên stackoverflow: Sự khác biệt về HÌNH HỌC và ĐỊA LÝ SQL Máy chủ 2008

Để chuyển đổi dữ liệu của bạn từ hình học sang địa lý, hãy thử:Location ::STGeomFromText (cast (GeomCol as varchar (max)), 4326)

Sau đó, bạn có thể sử dụng STIntersects phương pháp, được tài liệu bởi microsoft tại đây .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 2 cách trả về danh sách máy chủ được liên kết trong SQL Server bằng T-SQL

  2. SQL Server 2016 - Giới thiệu về Cơ sở dữ liệu Stretch

  3. Làm cách nào để kích hoạt MSDTC trên SQL Server?

  4. Các hàm TRIM, LTRIM và RTRIM của SQL Server

  5. Làm cách nào để tôi có thể lặp lại tất cả các tệp trong một thư mục bằng TSQL?