Me pregunto dónde está la diferencia entre estas dos uniones espaciales y, si hay una diferencia, cuándo usar cuál.
SELECT *
FROM points p, shapes s
WHERE ST_Within(p.geom, s.geom);
y
SELECT *
FROM points p
INNER JOIN shapes s ON ST_Within(p.geom, s.geom)
¿Es uno más rápido en ciertas situaciones?
JOIN
exclusivamente. Desafortunadamente, como está escrito, esta es más una pregunta pura de SQL, y un anzuelo de opinión .