表私有从表public继承id。我试图在$ lat,$ lng的某个距离内公开选择条目,而这些条目的ID不是私下的。
SELECT a.id, a.data, a.lat, a.lng,
(a_distance_function(a.lat,a.lng,$lat,$lng)) as a.distance
FROM public a
WHERE (a.lng BETWEEN $lng1 AND $lng2) AND (a.lat BETWEEN $lat1 AND $lat2)
HAVING a.distance < $dist
LEFT JOIN private b ON a.id = b.id
WHERE b.id is NULL;
但MariaDB错误对我没什么帮助。语法错误在&#39; .distance附近USMAP a WHERE a.lng BETWEEN -xx.xxx AND -xx.xxx&#39;
答案 0 :(得分:3)
JOIN
:
SELECT a.id, a.data, a.lat, a.lng,(a_distance_function(a.lat,a.lng,$lat,$lng)) as a.distance
FROM public a
LEFT JOIN private b
ON a.id = b.id
WHERE b.id is NULL
AND a.lng BETWEEN $lng1 AND $lng2
AND a.lat BETWEEN $lat1 AND $lat2
HAVING a.distance < $dist