我想选择表的某些列,并检查三列之一是否正确。在第三个选择中,我想选择所有距离小于100的地方,但是在第二个选择附近出现错误,或者在我想检查距离是否小于100的地方。
SELECT *
FROM map
WHERE name = ? OR shop = ?
AND (
SELECT *
FROM poi INNER JOIN map
ON map.id = map_map_id
WHERE user_user_id = ? AND map_map_id = ?
AND (
SELECT (ST_Distance_Sphere(point(map.lat, map.lon), point(map_map_id.lat, map_map_id.lon))) < 100
)
)