수학 연산자가 많은 것을 위해 제공됩니다PostgreSQL유형. 표준 수학적 규칙이없는 유형 (예 : 날짜/시간 유형)의 경우 다음 섹션에서 실제 동작을 설명합니다.
표 9.4사용 가능한 수학 연산자가 표시됩니다.
표 9.4. 수학 연산자
운영자 | 설명 | example | 결과 |
---|---|---|---|
+ |
추가 | 2 + 3 |
5 |
- |
subtraction | 2 - 3 |
-1 |
* |
곱셈 | 2 * 3 |
6 |
/ |
DIVISION (정수 부서는 결과를 잘라냅니다) | 4 / 2 |
2 |
% |
모듈로 (나머지) | 5 % 4 |
1 |
^ |
지수 (왼쪽에서 오른쪽으로 연관) | 2.0 ^ 3.0 |
8 |
|/ |
제곱근 | |/ 25.0 |
5 |
||/ |
큐브 루트 | ||/ 27.0 |
3 |
! |
Factorial (더 이상 사용되지 않음, 사용factorial () 대신) |
5 ! |
120 |
!! |
접두사 연산자로서의 Factorial (감가 상각, 사용factorial () 대신) |
!! 5 |
120 |
@ |
절대 값 | @ -5.0 |
5 |
& |
Bitwise and | 91 & 15 |
11 |
| |
Bitwise 또는 | 32 | 3 |
35 |
# |
Bitwise XOR | 17 # 5 |
20 |
~ |
Bitwise Not | ~1 |
-2 |
<< |
비트 시프트 왼쪽 | 1 << 4 |
16 |
|
Bitwise Shift Right | 8 >> 2 |
2 |
Bitwise 연산자는 적분 데이터 유형에서만 작동하며 비트 문자열 유형에서도 사용할 수 있습니다비트
and비트 varying
,표 9.14.
표 9.5가용 수학적 토토 베이를 보여줍니다. 테이블에서dp
표시이중 정밀도
. 이러한 기능 중 다수는 다른 인수 유형을 가진 여러 형태로 제공됩니다.이중 정밀도
데이터는 주로 호스트 시스템의 C 라이브러리 위에 구현됩니다. 따라서 경계 사례의 정확성과 동작은 호스트 시스템에 따라 다를 수 있습니다.
표 9.5. 수학적 기능
표 9.6랜덤 숫자를 생성하기위한 함수를 보여줍니다.
표 9.6. 임의의 기능
therandom ()
토토 베이는 간단한 선형 합동 알고리즘을 사용합니다. 빠르지 만 암호화 응용 프로그램에는 적합하지 않습니다.pgcrypto보다 안전한 대안을위한 모듈. 만약에setseed ()
호출, 후속의 결과random ()
현재 세션의 호출은 재발행으로 반복 가능합니다setseed ()
같은 인수와 함께. 사전없이setseed ()
같은 세션에서 호출, 첫 번째random ()
Call은 플랫폼 의존적 임의 비트 소스에서 씨앗을 얻습니다.
표 9.7사용 가능한 삼각 함수를 보여줍니다. 이 모든 기능은 인수와 유형의 반환 값을 취합니다이중 정밀도
. 각각의 삼각법은 라디안의 각도를 측정하는 두 가지 변형과 각도를 각도로 측정하는 두 가지 변형으로 제공됩니다.
표 9.7. 삼각 함수
각도로 측정 된 각도로 작업하는 또 다른 방법은 단위 변환 기능을 사용하는 것입니다
andRadians ()
앞서 나와 있습니다. 그러나 학위 기반 삼각 토토 베이 사용을 사용하는 것이 선호됩니다.이 방법은와 같은 특수한 경우에 대한 라운드 오프 오류를 피하기 때문에degrees ()
Sind (30)
.
표 9.8사용 가능한 쌍곡선 기능을 보여줍니다. 이 모든 기능은 인수와 유형의 반환 값을 취합니다이중 정밀도
.
표 9.8. 쌍곡선 기능