1
この派生テーブルがパフォーマンスを改善するのはなぜですか?
json文字列をパラメーターとして受け取るクエリがあります。jsonは、緯度と経度のペアの配列です。入力例は次のとおりです。 declare @json nvarchar(max)= N'[[40.7592024,-73.9771259],[40.7126492,-74.0120867] ,[41.8662374,-87.6908788],[37.784873,-122.4056546]]'; それは、1,3,5,10マイルの距離で、地理的なポイントの周りのPOIの数を計算するTVFを呼び出します。 create or alter function [dbo].[fn_poi_in_dist](@geo geography) returns table with schemabinding as return select count_1 = sum(iif(LatLong.STDistance(@geo) <= 1609.344e * 1,1,0e)) ,count_3 = sum(iif(LatLong.STDistance(@geo) <= 1609.344e * 3,1,0e)) ,count_5 = sum(iif(LatLong.STDistance(@geo) <= 1609.344e * 5,1,0e)) ,count_10 = count(*) from dbo.point_of_interest where LatLong.STDistance(@geo) <= 1609.344e …