PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Заявка за най-близкия съсед в PostGIS

От края на септември 2011 г. PostGIS поддържа индексирани заявки за най-близки съседи чрез специален(и) оператор(и), използваем(и) в клаузата ORDER BY:

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

...ще върне 10-те обекта, чийто geom е най-близкият -90,40 по мащабируем начин. Още няколко подробности (опции и предупреждения) са в тази публикация за обявление и използването на операторите <-> и <#> също вече е документирано в официалния справочник на PostGIS 2.0. (Основната разлика между двете е, че <-> сравнява центроидите на формата и <#> сравнява границите им – няма разлика за точките, други форми избират това, което е подходящо за вашите заявки.)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. UPPER() – Преобразуване в главни букви в PostgreSQL

  2. Postgres аналог на CROSS APPLY в SQL Server

  3. HikariCP - връзката не е налична

  4. Как ключовите думи НЕИЗМЕНЯЕМ, СТАБИЛЕН и ПРОМЕНЛИВ влияят върху поведението на функцията?

  5. PostgreSQL:Премахнете атрибута от колоната JSON