본문 바로가기

DB스토리/POSTGRESQL

Postgresql 9.3. 산술 함수와 연산자

표 9-2. 산술 연산자

연산자 이름설명예제결과
+덧셈2 + 35
-뺄셈2 - 3-1
*2 * 36
/나누기 (정수의 나눗셈에서 나머지를 절단)4 / 22
%나머지 (정수의 나눗셈에서 나머지) 5 % 41
^거듭제곱2.0 ^ 3.08
|/제곱근|/ 25.05
||/세제곱 근||/ 27.03
!계승5 !120
!!계승 (전치 연산자)!! 5120
@절대값@ -5.05
&이진 AND91 & 1511
|이진 OR32 | 335
#이진 XOR17 # 520
~이진 NOT~1-2
<<이진 왼쪽 시프트1 << 416
>>이진 오른쪽 시프트8 >> 22

 

 이진 연산자는 내부 데이터 형식에만 사용할 수 있습니다. 반면 다른 연산자는 모든 숫자 데이터 형식에 사용할 수 있습니다. 또한 이진 연산자는 표 9-10 에 나타내는 bit, bit varying 비트 문자열에 대해서도 사용할 수 있습니다.

 표 9-3에 사용 가능한 산술 함수를 나타냅니다. 이 표의 dp는, double precision을 의미합니다. 이 함수의 대부분은, 다른 인수 형식을 가진 여러 형태로 제공되고 있습니다. 특별한 경우를 제외하고, 임의 형식의 함수는 인수와 같은 데이터 형식을 반환합니다. double precision 데이터에 대한 함수의 대부분은 호스트 시스템의 C 라이브러리의 상층에 구현되어 있습니다. 따라서, 경계와 가까운 경우 정확성과 행동은 호스트 시스템에 따라 달라집니다.

 

표 9-3. 산술 함수

함수반환 값 형식설명예제결과
abs( x )(입력과 동일)절대값abs(-17.4)17.4
cbrt( dp )dp세제곱 근cbrt(27.0)3
ceil( dp or numeric )(입력 형식과 동일)인수보다 작지 않은 최소 정수ceil(-42.8)-42
ceiling( dp or numeric )(입력 형식과 동일)인수보다 작지 않은 가장 작은 정수 ( ceil 별명)ceiling(-95.3)-95
degrees( dp )dp라디안에 대한 각도degrees(0.5)28.6478897565412
div( y numeric , x numeric )numericy / x의 정수div(9,4)2
exp( dp or numeric )(입력 형식과 동일)지수exp(1.0)2.71828182845905
floor( dp or numeric )(입력 형식과 동일)인수보다 크지 않은 최대의 정수floor(-42.8)-43
ln( dp or numeric )(입력 형식과 동일)자연 로그ln(2.0)0.693147180559945
log( dp or numeric )(입력 형식과 동일)10 을 최저로 한 대수 (상용 로그)log(100.0)2
log( b numeric , x numeric )numericb를 최저로 한 대수log(2.0, 64.0)6.0000000000
mod( y , x )(인수 형식과 동일)y / x의 나머지mod(9,4)1
pi()dp"파이 (π)" 상수pi()3.14159265358979
power( a dp , b dp )dpa의 b 제곱power(9.0, 3.0)729
power( a numeric , b numeric )numerica의 b 제곱power(9.0, 3.0)729
radians( dp )dp각도에 해당하는 라디안radians(45.0)0.785398163397448
random()dp0.0 <= x <1.0 사이의 난수random()
round( dp or numeric )(입력 형식과 동일)반올림round(42.4)42
round( v numeric , s int )numeric소수점 s 자리까지 반올림하여 버림round(42.4382, 2)42.44
setseed( dp )void향후 random () 호출에 사용되는 종류의 설정 (-1.0에서 1.0 사이의 경계를 포함한 값)setseed(0.54823)
sign( dp or numeric )(입력 형식과 동일)인수의 부호 (-1, 0, +1)sign(-8.4)-1
sqrt( dp or numeric )(입력 형식과 동일)제곱근sqrt(2.0)1.4142135623731
trunc( dp or numeric )(입력 형식과 동일)버림trunc(42.8)42
trunc( v numeric , s int )numerics 자리에서 버림trunc(42.4382, 2)42.43
width_bucket( op numeric , b1 numeric , b2 numeric , count int )intoperand가 할당된, b1에서 b2까지 버킷 count 등 심도히스토그램 버킷을 반환width_bucket(5.35, 0.024, 10.06, 5)3
width_bucket( op dp , b1 dp , b2 dpcount int )intoperand가 할당된 b1에서 b2까지 버킷 count 등 심도히스토그램 버킷을 반환width_bucket(5.35, 0.024, 10.06, 5)3

 

마지막으로, 사용 가능한 삼각 함수는 표 9-4 에 나와 있습니다. 모든 삼각 함수는 double precision 데이터 형식의 인수와 반환 값을 취합니다. 삼각 함수의 인수는 라디안으로 표시됩니다. 반대 함수의 반환값은 라디​​안으로 표시됩니다. 위의 radians()와 degrees() 같은 단위 변환 함수를 참조하십시오.

 

표 9-4. 삼각 함수

함수설명
acos( x )아크코사인  함수
asin( x )아크사인 함수
atan( x )아크탄젠트 함수
atan2( y , x )y / x의 아크 탄젠트 함수
cos( x )코사인 함수
cot( x )코탄젠트 함수
sin( x )사인 함수
tan( x )탄젠트 함수


'DB스토리 > POSTGRESQL' 카테고리의 다른 글

다중로우 배열로 변경 처리  (0) 2018.01.30
postgresql merge query  (0) 2017.02.14
postgresql 메뉴얼 사이트  (0) 2017.01.20
PostgreSQL 문자열 함수와 연산자  (0) 2017.01.20
Postgresql 지원 툴  (0) 2016.03.11