sql >> Database >  >> RDS >> Mysql

Lat Lng-waarden opslaan in MySQL met behulp van Spatial Point Type

Ik denk dat je altijd de abstractie van het hoogste niveau moet gebruiken die gemakkelijk beschikbaar is. Als uw gegevens geospatiaal zijn, gebruik dan geospatiale objecten.

Maar pas op. Mysql is de slechtste geospatiale database die er is. Het is OK voor punten, maar al zijn polygoonfuncties zijn volledig verbroken - ze veranderen de polygoon in zijn begrenzende rechthoek en doen daar vervolgens het antwoord op.

Het ergste voorbeeld dat me raakte, is dat als je een polygoon hebt die Japan vertegenwoordigt en je vraagt ​​welke plaatsen er in Japan zijn, Vladivostok op de lijst komt!

Oracle en PostGIS hebben dit probleem niet. Ik verwacht dat MSSQL dat niet doet en elke Java-database die JTS als engine gebruikt, doet dat niet. Geospatiaal goed. MySQL Geospatial Slecht.

Lees hier Hoe gebruikt u ruimtelijke MySQL-query's om alle records in de X-straal te vinden? dat het is opgelost in 5.6.1.

Hoera!



  1. Verschillende manieren om de gebruikers van MySQL te vullen

  2. Is er een manier om een ​​INSERT...ON DUPLICATE KEY UPDATE in Zend Framework 1.5 uit te voeren?

  3. REGEXP_REPLACE() Functie in Oracle

  4. Hoe de mode=mysql toe te voegen aan embedded H2 DB in Spring Boot 1.4.1 voor @DataJpaTest?