sql >> Databasteknik >  >> RDS >> Mysql

Att välja närmaste geokoordinater med hjälp av rumsligt index på mysql-tabellen fungerar inte

Du saknar en parentes, du stänger inte din LineFromText.

Försök:

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. ExecuteBatch-metoden returnerar array med värdet -2 i java

  2. PreparedStatement körs framgångsrikt i Oracle men ger undantag i Microsoft SQL

  3. Varning:mysqli_connect():Okänd MySQL-servervärd

  4. Hur kan jag returnera flera identiska rader baserat på ett kvantitetsfält i själva raden?