sql >> Database >  >> RDS >> PostgreSQL

K-Nearest Neighbor Query in PostGIS

Sinds eind september 2011 ondersteunt PostGIS geïndexeerde zoekopdrachten voor naaste buren via een speciale operator(s) die kan/kunnen worden gebruikt in de ORDER BY-clausule:

SELECT name, gid
FROM geonames
ORDER BY geom <-> st_setsrid(st_makepoint(-90,40),4326)
LIMIT 10;

...geeft de 10 objecten terug waarvan geom is het dichtst bij -90,40 op een schaalbare manier. Een paar meer details (opties en voorbehouden) staan ​​in die aankondigingspost en het gebruik van de <-> en de <#> operators is nu ook gedocumenteerd in de officiële PostGIS 2.0-referentie. (Het belangrijkste verschil tussen de twee is dat <-> vergelijkt de vormzwaartepunten en <#> vergelijkt hun grenzen - geen verschil voor punten, andere vormen kiezen wat geschikt is voor uw zoekopdrachten.)



  1. Postgres sql-querysyntaxisfout invoegen van phpPgAdmin

  2. Full-Text Search implementeren in SQL Server 2016 voor beginners

  3. Wat is SQL Server?

  4. Welke invloed heeft Java voor OS X 2013-004 op (break) Swing-applicaties?