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

Използвайте ограничителна кутия от PostGIS в заявка за Postgres

Ако искате да получите bbox координатите като отделни стойности, може да искате да погледнете ST_XMax , ST_YMax , ST_XMin , ST_YMin . Следният CTE, който вгражда вашето запитване, трябва да ви даде представа:

WITH j (geom) AS (
 SELECT 
  ST_Extent(ST_Envelope(
   ST_Rotate(ST_Buffer(
    ST_GeomFromText('POINT(-87.6297982 41.8781136)',4326)::GEOGRAPHY,160934)::GEOMETRY,0)))
)
SELECT
    ST_XMax(geom),ST_YMax(geom),
    ST_XMin(geom),ST_YMin(geom)
FROM j


      st_xmax      |     st_ymax     |      st_xmin      |     st_ymin      
-------------------+-----------------+-------------------+------------------
 -85.6903925527536 | 43.327349928921 | -89.5681600538661 | 40.4285062983098

Странична бележка :Съхраняването на геометрични стойности като числа може да изглежда лесно, но едва ли някога е по-добрият избор - особено когато се работи с многоъгълници! Така че наистина бих ви препоръчал да съхранявате тези стойности като geometry или geography , което може да изглежда сложно на пръв поглед, но определено се отплаща в дългосрочен план.

Този отговор може да хвърли светлина върху заявките за разстояние/задържане, включващи многоъгълници:Getting all Buildings in range of 5 miles from specified coordinates




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да предам тайната на DB AWS в tomcat context.xml?

  2. грешка:Неуспешно удостоверяване на идентификация за потребител

  3. „Не може да се намери pg-0.12.2 в нито един от източниците“ при изпълнение на rspec

  4. защо не мога да видя размера на моята схема

  5. Използване на функцията на Levenshtein за всеки елемент в tsvector?