「store」タイプの建物に最も近いユーザーを計算する次のクエリがあります。
WITH y AS (
SELECT t.userid as us, ST_Distance(t.thegeometry,b.thegeomtry) as dist
FROM track t,buildings b
WHERE b.type = 'store'
)
SELECT us
FROM y
WHERE dist = (SELECT MIN(dist) FROM y)
問題は、最小値を計算しようとすると、0が返されることです。これは正しくありません。私のデータでは、ID112のユーザーとストアAの間の最小距離は2441メートルです。