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.