이 섹션에서는 값 그룹간에 다중 비교를위한 몇 가지 특수 구성을 설명합니다. 이러한 형식은 이전 섹션의 하위 쿼리 형식과 구문 적으로 관련되어 있지만 하위 쿼리는 포함되지 않습니다. 배열 하위 표현과 관련된 양식은입니다.PostgreSQL확장; 나머지는SQL-compliant. 이 섹션에 기록 된 모든 표현식 양식은 부울 (True/False) 결과를 반환합니다.
in
표현
in (value
[, ...])
오른쪽은 괄호로 된 표현식 목록입니다. 결과는입니다.“true”왼쪽 표현의 결과가 오른쪽 표현과 같으면. 이것은에 대한 속기 표기법입니다.
표현
=value1
또는표현
=value2
또는 ...
왼쪽 표현이 tỷ lệ kèo bóng đá tối nay을 생산하거나 동일한 오른쪽 값이없고 적어도 하나의 오른쪽 표현이 tỷ lệ kèo bóng đá tối nay을 생성하는 경우의 결과가in
구성은 거짓이 아닌 tỷ lệ kèo bóng đá tối nay이됩니다. 이것은 널 값의 부울 조합에 대한 SQL의 정상 규칙에 따른 것입니다.
표현
in (value
[, ...])
오른쪽은 괄호로 된 표현 목록입니다. 결과는입니다.“true”왼쪽 표현의 결과가 모든 오른쪽 표현식에 불평등 한 경우. 이것은에 대한 속기 표기법입니다.
표현
<value1
및표현
<value2
및 ...
왼쪽 표현이 널을 생성하거나 동일한 오른쪽 값이없고 적어도 하나의 오른쪽 표현식이 널을 생성하는 경우의 결과가.구성은 순진하게 기대할 수 있듯이 사실이 아닙니다. 이것은 널 값의 부울 조합에 대한 SQL의 정상 규칙에 따른 것입니다.
x y
NOT (x in y)
모든 경우에. 그러나 tỷ lệ kèo bóng đá tối nay 값은 작업 할 때 초보자를 시작할 가능성이 훨씬 높습니다보다 작업 할 때보 다
in
. 가능하면 상태를 긍정적으로 표현하는 것이 가장 좋습니다.
any
/일부
(배열)표현
운영자
Any (배열 표현
)표현
운영자
일부 (배열 표현
)
오른쪽은 괄호화 된 표현식으로 배열 값을 생성해야합니다. 왼쪽 표현식이 평가되고 주어진를 사용하여 배열의 각 요소와 비교됩니다.운영자
, 부울 결과를 산출해야합니다. 의 결과any
is“true”실제 결과가 얻은 경우. 결과는입니다.“거짓”실제 결과가 발견되지 않은 경우 (배열에 요소가없는 경우 포함).
배열 표현식이 널 배열을 생성하면 결과는any
tỷ lệ kèo bóng đá tối nay이됩니다. 왼쪽 표현이 tỷ lệ kèo bóng đá tối nay을 생성하면의 결과는any
는 일반적으로 무효입니다 (비 스트릭 비교 연산자는 다른 결과를 얻을 수 있습니다). 또한 오른쪽 배열에 널 요소가 포함되어 있고 진정한 비교 결과가 없으면 결과가any
는 거짓이 아닌 tỷ lệ kèo bóng đá tối nay이됩니다 (다시 엄격한 비교 연산자를 가정). 이것은 널 값의 부울 조합에 대한 SQL의 정상 규칙에 따른 것입니다.
일부
동의어입니다Any
.
all
(배열)표현
운영자
ALL (배열 표현
)
오른쪽은 괄호화 된 표현식으로 배열 값을 생성해야합니다. 왼쪽 표현식이 평가되고 주어진를 사용하여 배열의 각 요소와 비교됩니다.운영자
, 부울 결과를 산출해야합니다. 의 결과all
is“true”모든 비교가 True를 산출하는 경우 (배열에 요소가없는 경우 포함). 결과는입니다.“거짓”잘못된 결과가 발견 된 경우.
배열 표현식이 널 배열을 생성하면 결과는all
tỷ lệ kèo bóng đá tối nay이됩니다. 왼쪽 표현이 tỷ lệ kèo bóng đá tối nay을 생성하면의 결과는all
는 일반적으로 무일하게 널입니다 (비 스트릭 비교 연산자는 다른 결과를 얻을 수 있습니다). 또한 오른쪽 배열에 널 요소가 포함되어 있고 잘못된 비교 결과가없는 경우 결과가all
는 사실이 아니라 널이됩니다 (다시 엄격한 비교 연산자를 가정). 이것은 널 값의 부울 조합에 대한 SQL의 정상 규칙에 따른 것입니다.
row_constructor
운영자
row_constructor
각 측면은에 설명 된대로 행 생성자입니다.섹션 4.2.13. 두 행 생성자는 같은 수의 필드를 가져야합니다. 주어진운영자
각각의 해당 필드 쌍에 적용됩니다. (필드는 다른 유형 일 수 있으므로 이는 각 쌍에 대해 다른 특정 연산자를 선택할 수 있음을 의미합니다.) 모든 선택한 연산자는 일부 B-Tree Operator 클래스의 구성원이거나 AN의 부정관이어야합니다.=
B- 트리 연산자 클래스의 구성원, 즉 행 생성자 비교가 가능할 때만 가능하다는 것을 의미합니다.운영자
is=
, <
, <
, <=
, , 또는
=
또는 이들 중 하나와 유사한 의미론이 있습니다.
the=
and<
케이스는 다른 사례와 약간 다르게 작동합니다. 해당하는 모든 멤버가 무감각하고 같으면 두 행이 동일하게 간주됩니다. 해당 구성원이 널이없고 불평등 한 경우 행은 불평등합니다. 그렇지 않으면 행 비교 결과가 알려지지 않았습니다 (tỷ lệ kèo bóng đá tối nay).
용<
, <=
, and
=
케이스, 행 요소는 왼쪽에서 오른쪽으로 비교되며, 불평등하거나 무효 한 요소 쌍이 발견 되 자마자 중지됩니다. 이 요소 중 하나 중 하나가 tỷ lệ kèo bóng đá tối nay 인 경우 행 비교 결과는 알려지지 않았습니다 (tỷ lệ kèo bóng đá tối nay). 그렇지 않으면이 요소 쌍을 비교하면 결과가 결정됩니다. 예를 들어,행 (1,2, tỷ lệ kèo bóng đá tối nay) <Row (1,3,0)
세 번째 요소 쌍이 고려되지 않기 때문에 널이 아닌 True를 생산합니다.
이전PostgreSQL8.2,<
, <=
, and
=
사례는 SQL 사양에 따라 처리되지 않았습니다. 비교와 같은 비교row (a, b) <row (c, d)
|a <c 및 b <d
올바른 동작은에 해당하는 반면a <c 또는 (a = c 및 b <d)
.
row_constructor
row_constructor
이 구성은 A와 유사합니다<
행 비교이지만 널 입력에 대해서는 널을 생성하지 않습니다. 대신, 모든 널 값은 널 널 값이 아닌 값과는 별다른 것으로 간주되며, 두 개의 널은 동일하지 않은 것으로 간주됩니다 (구별되지 않음). 따라서 결과는 참이거나 거짓이거나 결코 널을 tỷ lệ kèo bóng đá tối nay하지 않을 것입니다.
row_constructor
|row_constructor
이 구성은 A와 유사합니다=
행 비교이지만 널 입력에 대해서는 널을 생성하지 않습니다. 대신, 모든 널 값은 널 널 값이 아닌 값과는 별다른 것으로 간주되며, 두 개의 널은 동일하지 않은 것으로 간주됩니다 (구별되지 않음). 따라서 결과는 항상 진실 또는 거짓이 될 것입니다.
레코드
운영자
레코드
SQL 사양은 결과가 두 개의 tỷ lệ kèo bóng đá tối nay 값 또는 tỷ lệ kèo bóng đá tối nay과 tỷ lệ kèo bóng đá tối nay을 비교하는 데 의존하는 경우 RETURN tỷ lệ kèo bóng đá tối nay과 ROW-WISE 비교가 필요합니다..PostgreSQL두 행 생성자의 결과를 비교할 때만 (.섹션 9.24.5) 또는 행 생성자를 하위 퀘스트의 출력과 비교 (와 같이섹션 9.23). 두 개의 복합 유형 값이 비교되는 다른 상황에서, 두 개의 널 필드 값이 동일하게 간주되고, 널은 널보다 큰 것으로 간주됩니다. 복합 유형에 대한 일관된 정렬 및 인덱싱 동작을 갖기 위해서는 필요합니다.
각 측면이 평가되며 행과 비교됩니다. 복합 유형 비교는 일 때 허용됩니다.운영자
is=
, <
, <
, <=
, 또는
=
또는 이들 중 하나와 유사한 의미를 가지고 있습니다. (구체적으로 말하면, 연산자는 B- 트리 연산자 클래스의 구성원 인 경우 행 비교 연산자가 될 수 있습니다.=
B- 트리 연산자 클래스의 구성원) 위의 연산자의 기본 동작은와 동일합니다.|
행 생성자의 경우 (참조섹션 9.24.5).
기본 B- 트리 연산자 클래스가없는 요소를 포함하는 행의 매칭을 지원하려면 다음 연산자는 복합 유형 비교를 위해 정의됩니다.*=
, *<
, *<
, *<=
, *
및* =
. 이 연산자는 두 행의 내부 이진 표현을 비교합니다. 평등 연산자와의 두 행을 비교하더라도 두 행이 다른 바이너리 표현을 가질 수 있습니다. 이러한 비교 연산자 하에서 행의 순서는 결정적이지만 그렇지 않으면 의미가 없습니다. 이 연산자는 구체화 된 뷰에 내부적으로 사용되며 복제 및 B- 트리 중복 제거와 같은 다른 특수 목적에 유용 할 수 있습니다 (참조섹션 63.4.2). 그래도 일반적으로 쿼리를 작성하는 데 유용하지는 않습니다.
문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를보고하려면