반응형
절대값을 계산할 때는 ABS함수를 사용한다. 예를 들어, -2와 +2 라는 값을 + 연산을 하게 되면, 0이지만, 이 두 값 간의 차이값.. 즉 절대값을 구해야할 때가 있다. 두 지점의 거리라든지... 그런 경우엔 ABS함수를 활용할 수 있다.
CREATE TABLE location1 ( x1 integer , x2 integer ); INSERT INTO location1 VALUES ( 5 , 10) , (10 , 5) , (-2 , 4) , ( 3 , 3) , ( 0 , 1) ; select ABS(x1 - x2) as 절대값 from location1;
결과는 아래와 같다.
제곱근을 구할 때, SQRT 함수를 쓴다. 제곱근이 뭔지 모른다고?? 괜찮다. 모를 수 있다. 25의 제곱근은 5이다. 5가 25의 제곱근이 된다.
POWER함수는 숫자를 거듭 제곱한 값을 반환한다. 예를 들어, 5를 두번 곱하면? 25이다.
select SQRT(25) as 제곱근, POWER(5, 2) as 제곱값;
PostgreSQL에는 두 좌표간 거리를 계산할 때 쓰이는 유클리드 값을 구현할 수 있다. 참고로 유클리드 계산법은 아래와 같다.
POINT함수를 이용하여 유클리드 값을 구할 수 있는데, 위 공식에 비해 문법이 아주 심플하다.
POINT(x1, y1) <-> POINT(x2, y2)
CREATE TABLE location2 ( x1 integer , y1 integer , x2 integer , y2 integer ); INSERT INTO location2 VALUES (0, 0, 2, 2) , (3, 5, 1, 2) , (5, 3, 2, 1) ; select point(x1,y1) <-> point(x2, y2) as 유클리드값 from location2;
반응형
'Tech > Database' 카테고리의 다른 글
PostgreSQL - Window function (0) | 2018.07.06 |
---|---|
PostgreSQL - 날짜계산 (0) | 2018.07.06 |
Transaction의 이해 - PostgreSQL (0) | 2018.07.04 |
PostgreSQL - greatest, least, SIGN함수 (0) | 2018.07.03 |
PostgreSQL - COALESCE 함수 활용 (0) | 2018.07.03 |
댓글