일반적인 비교 연산자는 다음과 같이 사용할 수 있습니다.표 9.1.
표 9.1. 비교 연산자
운영자 | 설명 |
---|---|
DataType < DataType → 부울 |
|
DataType DataType → 부울 |
보다 큰 |
DataType <= DataType → 부울 |
보다 작거나 |
DataType > = DataType → 부울 |
더 크거나 |
DataType = DataType → 부울 |
Equal |
DataType < DataType → 부울 |
동일하지 않음 |
DataType != DataType → 부울 |
동일하지 않음 |
<
“동일하지 않음”. !=
| 별명으로 변환<
매우 초기 구문 분석. 따라서 구현할 수 없습니다!=
및<
다른 일을하는 연산자.
이 비교 연산자는 숫자, 문자열 및 날짜/시간 유형을 포함하여 자연스러운 순서가있는 모든 내장 데이터 유형에 사용할 수 있습니다. 또한 구성 요소 데이터 유형이 비교할 경우 배열, 복합 유형 및 범위를 비교할 수 있습니다.
일반적으로 관련 데이터 유형의 값도 비교할 수 있습니다. 예를 들어Integer
bigint
작동합니다. 이런 종류의 일부 사례는에 의해 직접 구현됩니다.“Cross-Type”비교 연산자이지만, 그러한 연산자가 없으면, 파서는 저널 유형을 더 많은 일반 유형으로 강요하고 후자의 비교 연산자를 적용합니다..
위와 같이, 모든 비교 연산자는 유형의 값을 반환하는 이진 연산자입니다부울
. 따라서와 같은 표현1 <2 <3
유효하지 않습니다 (없기 때문에<
부울 값과를 비교하는 연산자3
). 사용사이
범위 테스트를 수행하기 위해 아래에 표시된 예측.
에 표시된대로 비교 사전 환자도 있습니다.표 9.2. 이들은 연산자와 비슷하지만 SQL 표준에 의해 의무화 된 특별 구문이 있습니다.
표 9.2. 비교 사전
술어 설명 예제 |
---|
사이 (범위 끝점 포함).
|
|
사이, 두 종말점 값을 정렬 한 후.
|
두 엔드 포인트 값을 정렬 한 후 사이에 있지 않습니다.
|
동일하지 않아서 널을 비슷한 값으로 취급하십시오.
|
동일, 널을 비슷한 값으로 취급하십시오.
|
값이 와이즈 토토인지 테스트합니다.
|
값이 와이즈 토토이 아닌지 테스트합니다.
|
값이 와이즈 토토인지 테스트 (비표준 구문). |
값이 와이즈 토토이 아닌지 테스트 (비표준 구문). |
부울 표현이 참으로 테스트됩니다.
|
부울 표현이 거짓인지 알 수 없는지 테스트합니다.
|
부울 표현이 거짓을 생성하는지 테스트합니다.
|
부울 표현이 참인지 알 수 없는지 테스트합니다.
|
부울 표현이 알 수 없는지 테스트합니다.
|
부울 표현식이 참인지 거짓인지 테스트.
|
a
사이x
andy
a
> =x
anda
<=y
사이
범위에 포함 된 엔드 포인트 값을 처리합니다.대칭 사이
사이
왼쪽에 대한 주장이 필요하지 않은 경우를 제외하고and
오른쪽에있는 인수보다 작거나 동일합니다. 그렇지 않은 경우,이 두 인수는 자동으로 교환되므로 비어 있지 않은 범위가 항상 암시됩니다.
의 다양한 변형사이
일반 비교 연산자 측면에서 구현되므로 비교할 수있는 모든 데이터 유형에 대해 작동합니다.
사용and
in사이
Syntax는 사용으로 모호성을 만듭니다.and
논리 연산자로서. 이것을 해결하기 위해, a의 제한된 표현식 유형 세트 만 허용됩니다.사이
절. 더 복잡한 하위 표현을 작성 해야하는 경우사이
, 하위 표현 주위에 괄호를 작성하십시오.
일반 비교 연산자 수율 와이즈 토토 (Signifing“알 수없는”), 입력이 와이즈 토토 일 때 true 또는 false가 아닙니다. 예를 들어,7 = 와이즈 토토
그렇지 않은 것처럼 와이즈 토토을 생산합니다7 <> 와이즈 토토
. 이 동작이 적합하지 않은 경우 사용하십시오.is [not] 별개의
Predicates :
a
|b
a
|b
널 비 널 입력의 경우|
|<
연산자. 그러나 두 입력 모두 와이즈 토토이면 False를 반환하고 하나의 입력 만 와이즈 토토 인 경우 TRUE를 반환합니다.|
동일합니다=
와이즈 토토 입력의 경우, 두 입력이 모두 와이즈 토토이면 true를 반환하고 하나의 입력 만 와이즈 토토이면 False를 반환합니다. 따라서, 이들은 널이 Null이 정상적인 데이터 값인 것처럼 효과적으로 행동하는 것이“알 수없는”.
값이 무효인지 여부를 확인하려면 Predicates를 사용하십시오.
표현
is 와이즈 토토표현
와이즈 토토
또는 등가이지만 비표준이지만,
표현
is와이즈 토토표현
not와이즈 토토
donot쓰기
왜냐하면표현
= 와이즈 토토와이즈 토토
“동일” 와이즈 토토
. (와이즈 토토 값은 알려지지 않은 값을 나타내며, 두 개의 미지의 값이 동일한지 여부는 알려져 있지 않습니다.)
일부 응용 프로그램은
true를 반환하면표현
= 와이즈 토토표현
와이즈 토토 값으로 평가합니다. 이러한 응용 프로그램은 SQL 표준을 준수하도록 수정하는 것이 좋습니다.transform_와이즈 토토_equals구성 변수를 사용할 수 있습니다. 활성화 된 경우postgresql전환x = 와이즈 토토
클로즈 tox is 와이즈 토토
.
표현
Row-Valued,is 와이즈 토토
행 표정 자체가 무일하게 또는 모든 행의 필드가 널이면.와이즈 토토
행 표정 자체가 널이없고 모든 행의 필드가 널이 아닌 경우에 맞습니다. 이 행동 때문에is 와이즈 토토
및와이즈 토토
행 값 표현식에 대한 역 결과를 항상 반환하지는 않습니다. 특히, 와이즈 토토 및 와이즈 토토 필드를 모두 포함하는 행 값 표현식은 두 테스트 모두에 대해 False를 반환합니다.Row
와이즈 토토과는 다릅니다
또는Row
와이즈 토토과는 다릅니다
, 이는 행 필드에서 추가 테스트없이 전체 행 값이 널인지 확인합니다.
Boolean 값도 Predicates를 사용하여 테스트 할 수 있습니다
boolean_expression
진실boolean_expression
사실이 아닙니다boolean_expression
거짓boolean_expression
거짓이 아니다boolean_expression
알 수 없음boolean_expression
알 수 없음
이것은 피연산자가 무일하게 될 때에도 항상 참 또는 거짓을 반환합니다. 널 입력은 논리적 값으로 취급됩니다“알 수없는”. 주석알 수 없음
및알 수 없음
효과적으로is 와이즈 토토
및와이즈 토토
30623_30696
일부 비교 관련 기능도 사용할 수 있습니다.표 9.3.
표 9.3. 비교 기능
문서에 올바르지 않은 내용이 있으면 일치하지 않습니다.이 양식문서 문제를보고하려면