Hi,
SELECT gp.id, gpx.id
FROM positions gp, positions gpx
WHERE gpx.x +20 > gp.x
AND gpx.x -20 < gp.x
AND gpx.y +20 > gp.y
AND gpx.y -20 < gp.y
AND gpx.id != gp.idwas mir auch wie zu erwarten ein sinnvolles Resultat ausgibt
Ist das wirklich das was du willst?
Angenommen du willst alle Punkte in der Nähe von (0;0), dann würde deine Abfrage z.B. den Punkt (19;19) liefern, aber nicht den Punkt (21;0). Wobei der Abstand von (0;0) zu (19;19) (~27) größer ist als von (0;0) zu (21;0) (=21).
Es heißt ja Um_kreis_suche und nicht Um_quadrat_suche. Oder hast du das nur zur Vereinfachung so gemacht?
mfG,
steckl