본문 바로가기

2018/0735

PostgreSQL - greatest, least, SIGN함수 PostgreSQL의 최대값, 최소값을 구하는 함수는 greatest, least 이다. 다른 dbms의 MAX함수나 MIN함수처럼 함수명이 직관적이긴 한데, 굳이 이렇게 네이밍을 했어야 하나하는 생각은 든다.정정 : 다시 확인해봤는데, postgreSQL에서 MAX, MIN과 GREATEST, LEAST의 사용법은 엄연히 다르다. MAX, MIN은 레코드중에서 최대/최소값을 구하는 것이고, GREATEST, LEAST는 여러 컬럼 값 중에서 최대/최소값을 구하는 것이다. --3을 반환한다. select greatest(1, 2, 3) ; --quart_sales의 분기2 레코드의 최대/최소값을 반환한다. select MAX(분기2), MIN(분기2) from quart_sales; SIGN 함수는 매개.. 2018. 7. 3.
PostgreSQL - COALESCE 함수 활용 쿼리를 만들 때, null 값을 특정 데이터로 가공해서 추출이 필요할 때가 있다. 뿐만 아니라, application layer에서 데이터가 아닌 null 을 리턴할 때, NullPointerException을 초래할 수도 있고, 집계 쿼리를 만들 때도, Null 데이터의 연산은 Null을 반환하므로, 데이터 변환이 필요하다. PostgreSQL에는 Oracle 의 nvl 함수와 같이 COALESCE라는 함수가 있다. 아래와 같은 데이터가 있다. CREATE TABLE purchase_log ( purchase_id varchar(255) , amount integer , coupon integer ); INSERT INTO purchase_log VALUES ('10001', 3280, NULL) , .. 2018. 7. 3.
PostgreSQL - 도메인 추출 쿼리 로그를 저장한 테이블에서 도메인만 추출해야할 때가 있다.access_log 테이블에 아래와 같은 데이터가 있다고 가정하자. CREATE TABLE access_log ( stamp varchar(255) , referrer text , url text ); INSERT INTO access_log VALUES ('2017-08-26 12:02:00', 'http://www.korea.com/path1/index.php?k1=v1&k2=v2#Ref1', 'http://www.augustine.com/video/detail?id=001') , ('2017-08-26 12:02:01', 'http://www.germany.net/path1/index.php?k1=v1&k2=v2#Ref1', 'http://ww.. 2018. 7. 3.
반응형