と がtable1
ありtable2
ます。
table1 contains ZipCode (varchar(12)), GeogCol1 (Geography)-spatial index
table2 contains ZipCode (varchar(12)), Product (varchar(12))
両方のテーブルに含まれていると想定されるProduct's
ユーザー提供者から特定の半径内にあるすべてを返し、返されたそれぞれからを表示し、提供されたものでソートまたは逆ソートするオプションをユーザーに提供する必要があります。Zipcode ('90266')
distance
Zipcode
Product
Products
distance
Zipcode
クエリ 1- これが私の半径距離クエリです。
SELECT h.*
FROM table1 g
JOIN table1 h on g.Zipcode <> h.Zipcode AND g.Zipcode = '90266' AND h.Zipcode <> '90266'
WHERE g.GeogCol1.STDistance(h.GeogCol1)<=(10 * 1609.344)
ORDER BY g.GeogCol1.STDistance(h.GeogCol1)
クエリ 2- これが私の製品クエリです。
SELECT *
FROM table2
WHERE (Active = 1) AND (ProductName LIKE '%54%')
また、単一のテーブルに対してクエリを実行できるように、各製品の他の情報と共にGeogCol1
空間インデックスを配置したほうがよいでしょうか?table2