Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Die Auswahl der nächstgelegenen Geokoordinaten mithilfe des räumlichen Index in der MySQL-Tabelle funktioniert nicht

Sie haben eine fehlende Klammer, Sie schließen Ihren LineFromText nicht.

Versuchen Sie:

SELECT  *
FROM    mytable
WHERE   MBRContains(LineFromText(CONCAT(
    '('
    , @lon + 10 / ( 111.1 / cos(RADIANS(@lon)))
    , ' '
    , @lat + 10 / 111.1
    , ','
    , @lon - 10 / ( 111.1 / cos(RADIANS(@lat)))
    , ' '
    , @lat - 10 / 111.1 
    , ')' ))
    ,mypoint)