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