본문 바로가기

Programming/PostreSQL11

postgresql docker compose로 실행 docker-compose.yml 파일 생성 version: "3" services: postgresql: image: 'postgres:latest' ports: - 5432:5432 environment: POSTGRES_USER: pguser POSTGRES_PASSWORD: pgpassword POSTGRES_DB: pgdb volumes: - postgresdata:/var/lib/postgresql/data volumes: postgresdata: 설정한 user 와 password 로 접속시에, The authentication type 10 is not supported. 에러가 발생한다면 설정 파일을 수정해야 한다. postgresql.conf 파일 수정 도커 볼륨 위치 : /var/li.. 2023. 3. 7.
Postgresql 에서 URL decode Postgresql 에서 URL decode 기본적으로 제공해주는 함수가 없으므로, 사용자 정의 함수를 만들어서 사용합니다. CREATE OR REPLACE FUNCTION url_decode(input text) RETURNS text LANGUAGE plpgsql IMMUTABLE STRICT AS $$ DECLARE bin bytea = ''; byte text; BEGIN FOR byte IN (select (regexp_matches(input, '(%..|.)', 'g'))[1]) LOOP IF length(byte) = 3 THEN bin = bin || decode(substring(byte, 2, 2), 'hex'); ELSE bi.. 2017. 12. 10.
마이바티스 쿼리 생성 - PostGIS 공간 쿼리 마이바티스 쿼리 생성 - PostGIS 공간 쿼리 거리순으로 대상을 조회합니다. 기본 조회 쿼리 SELECT * FROM my_table where my_column like '%#{text}%'; SELECT ST_SetSRID(ST_Point(CAST(#{lng} as double precision), CAST(#{lat} as double precision)), 4326); with 절을 사용 WITH center AS ( SELECT ST_SetSRID(ST_Point(126.94130, 37.42187), 4326) as point ) SELECT point from center 거리를 비교 WITH center AS ( SELECT ST_SetSRID(ST_Point(126.94130, 37... 2017. 4. 21.
PostGIS 공간쿼리 PostGIS 공간쿼리 목표 : 전달된 좌표를 기반으로 가장 가까운 순으로 출력한다. Geometry 로 변경 좌표를 Geometry 로 변경 select ST_SetSRID(ST_Point(126.94130, 37.37736), 4326) 문자열을 변수로 받는 경우는 double precision 으로 변경 ST_SetSRID(ST_Point(CAST(#{lng} as double precision), CAST(#{lat} as double precision)), 4326) Geometry 에서 SRID 확인 st_srid(geom) SRID 변경 https://postgis.net/docs/ST_Transform.html geometry ST_Transform(geometry g1, integer s.. 2017. 4. 20.
Postgresql 버전 확인 Postgresql 버전 확인 pgAdmin Query 창에서 아래 커맨드를 실행. select version(); 결과는 아래와 같이 나온다. "PostgreSQL 9.5.3, compiled by Visual C++ build 1800, 64-bit" 출처 https://www.postgresql.org/message-id/a2de01dd0808280738u32f76cffgaf5c740d12fff763@mail.gmail.com 2017. 4. 6.
Postgresql - DBLINK Postgresql - DBLINK ERROR - function dblink(unknown, unknown) does not exist 위와 같은 에러가 나오면 CREATE EXTENSION dblink; 구문을 실행합니다.그 후 접속 테스트를 합니다. SELECT dblink_connect('host=localhost user=postgresuser password=enjoy dbname=postgres'); 각각, host, user, password, dbname 을 정확히 입력합니다. ERROR - a column definition list is required for functions returning “record” 위의 에러가 발생하면, dblink 사용시에 해당 결과를 받을 수 있도록 .. 2016. 8. 31.