PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Tworzenie tabeli dla wartości Polygon w Postgis i wstawianie

Nie mam wystarczającej reputacji, aby skomentować Twoje pytanie, jest link, który może Ci się przydać:Zapytanie SQL dla punktu w wieloboku przy użyciu PostgreSQL

Dodawanie rozszerzenia do bazy danych

CREATE EXTENSION postgis;

Tworzenie tabeli

CREATE TABLE areas (
    id SERIAL PRIMARY KEY,
    name VARCHAR(64),
    polygon GEOMETRY
);

Tworzenie indeksu nad polem wielokąta

CREATE INDEX areas_polygon_idx ON areas USING GIST (polygon);

Wstawianie rekordu

INSERT INTO areas (name, polygon) VALUES (
    'A',
    ST_GeometryFromText('POLYGON((50.6373 3.0750,50.6374 3.0750,50.6374 3.0749,50.63 3.07491,50.6373 3.0750))')
);

Zapytania

SELECT name FROM areas WHERE ST_Contains(polygon, ST_GeomFromText('POINT(50.637 3.074)'));
 name 
------
(0 rows)

SELECT name FROM areas WHERE ST_Contains(polygon, ST_GeomFromText('POINT(50.63735 3.07495)'));
 name 
------
 A
(1 row)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak używać pakietu graphql-type-json z GraphQl

  2. Jak zainstalować tylko narzędzia klienckie dla PostgreSQL w systemie Windows?

  3. Przesunięcie lokalnej strefy czasowej w PostgreSQL

  4. Jaki jest odpowiednik LITAGG (bazy danych Oracle) w PostgreSQL?

  5. Błąd uzyskiwania uwierzytelniania nie powiodło się z postgresql z wiersza poleceń