Tôi đang sử dụng các kiểu dữ liệu không gian SQL Server 2008. Tôi có một bảng với tất cả các quốc gia (như đa giác) như kiểu dữ liệu GEOMETRY. Bây giờ tôi muốn kiểm tra xem các tọa độ của một điểm (vĩ độ, kinh độ) có phải là kiểu dữ liệu GEOGRAPHY, nằm trong trạng thái đó hay không.SQL Server 2008 Spatial: tìm một điểm trong đa giác
Tôi không thể tìm thấy bất kỳ ví dụ nào bằng cách sử dụng các loại dữ liệu không gian mới. Hiện tại, tôi có một cách giải quyết được thực hiện nhiều năm trước, nhưng nó có một số nhược điểm.
Tôi đã SQL Server 2008 và 2012. Nếu phiên bản mới có một số cải tiến, tôi cũng có thể bắt đầu làm việc trong đó.
Cảm ơn.
CẬP NHẬT 1:
Tôi đang thêm mẫu mã để rõ ràng hơn một chút.
declare @s geometry --GeomCol is of this type too.
declare @z geography --GeogCol is of this type too.
select @s = GeomCol
from AllStates
where STATE_ABBR = 'NY'
select @z = GeogCol
from AllZipCodes
where ZipCode = 10101
Hiệu suất của nó là kém nếu bạn có hồ sơ lớn trong cơ sở dữ liệu, tôi đã thử truy vấn trên 1600000 bản ghi và mất khoảng 2 phút hoàn thành. –