sql >> Database >  >> RDS >> Mysql

Het selecteren van de dichtstbijzijnde geografische coördinaten met behulp van de ruimtelijke index op de mysql-tabel werkt niet

Je hebt een ontbrekend haakje, je sluit je LineFromText niet af.

Probeer:

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)


  1. Hoe een MySQL-weergave te maken

  2. Waarom retourneert CONNECT BY LEVEL op een tafel extra rijen?

  3. SQL UPDATE-syntaxis - weergegeven door DBMS

  4. Gebruik meerdere kolommen als unieke identifier voor mysql