9.23. 하위 쿼리 표현

이 섹션은를 설명합니다.SQL-이용할 수있는.PostgreSQL. 이 섹션에 기록 된 모든 표현식 양식은 부울 (True/False) 결과를 반환합니다.

9.23.1. 존재

존재 (SubQuery)

의 주장존재임의입니다select성명서 또는SubQuery. 하위 사설 토토 사이트는 행을 반환하는지 여부를 결정하기 위해 평가됩니다.존재istrue; 하위 사설 토토 사이트가 행을 반환하지 않으면의 결과는존재is거짓.

하위 사설 토토 사이트는 주변 사설 토토 사이트의 변수를 참조 할 수 있으며, 이는 하위 사설 토토 사이트를 한 번 평가하는 동안 상수 역할을합니다.

하위 사설 토토 사이트는 일반적으로 완료까지의 모든 행이 반환되는지 여부를 결정하기에 충분히 오래 실행됩니다. 부작용이있는 하위 사설 토토 사이트 (예 : 호출 시퀀스 함수)를 쓰는 것은 현명하지 않습니다.

결과는 행이 반환되는지 여부에만 의존하기 때문에 해당 행의 내용이 아닌 하위 퀘스트의 출력 목록은 일반적으로 중요하지 않습니다. 일반적인 코딩 협약은 모든 것을 쓰는 것입니다존재양식의 테스트존재합니다 (select 1 where ...). 그러나이 규칙에는 사용하는 하위 사설 토토 사이트와 같은 예외가 있습니다교차.

이 간단한 예제는 내부 조인과 같습니다col2, 그러나 각각에 대해 최대 하나의 출력 행을 생성합니다tab1행, 몇 가지 일치하는 경우에도tab2행 :

col1을 선택하십시오

9.23.2. in

표현in (SubQuery)

오른쪽은 괄호로 된 서브 쿼리이며 정확히 하나의 열을 반환해야합니다. 왼쪽 표현식이 평가되고 하위 퀘스트 결과의 각 행과 비교됩니다.inistrue동일한 하위 사설 토토 사이트 행이있는 경우. 결과는입니다.거짓동일한 행이 발견되지 않은 경우 (하위 사설 토토 사이트가 행이없는 경우를 포함하여)..

왼쪽 표현식이 널을 생산하거나 같은 오른쪽 값이없고 적어도 하나의 오른쪽 행이 널을 얻는 경우in구성은 거짓이 아닌 null이됩니다. 이것은 널 값의 부울 조합에 대한 SQL의 정상 규칙에 따른 것입니다.

존재, 하위 사설 토토 사이트가 완전히 평가 될 것이라고 가정하는 것은 현명하지 않습니다.

row_constructorin (SubQuery)

이 형태의 왼쪽in에 설명 된대로 행 생성자입니다.섹션 4.2.13. 오른쪽은 괄호로 된 서브 쿼리이며 왼쪽 행에 표현식이있는 것만 큼 많은 열을 반환해야합니다.inistrue동일한 하위 사설 토토 사이트 행이있는 경우. 결과는입니다.거짓동일한 행이 발견되지 않은 경우 (하위 사설 토토 사이트가 행이없는 경우를 포함하여)..

평소와 같이 행의 널 값은 SQL 부울 표현식의 일반 규칙에 따라 결합됩니다. 해당하는 모든 멤버가 무감각하고 같으면 두 행이 동일하게 간주됩니다.inis null.

9.23.3. 

표현in (SubQuery)

오른쪽은 괄호로 된 서브 쿼리이며 정확히 하나의 열을 반환해야합니다. 왼쪽 표현식이 평가되고 하위 퀘스트 결과의 각 행과 비교됩니다.istrue불평등 한 서브 사설 토토 사이트 행만 발견되면 (하위 사설 토토 사이트가 행을 반환하는 경우 포함). 결과는입니다.거짓동일한 행이있는 경우.

왼쪽 표현식이 널을 생산하거나 같은 오른쪽 값이없고 적어도 하나의 오른쪽 행이 널을 얻는 경우구성은 사실이 아닙니다. 이것은 널 값의 부울 조합에 대한 SQL의 정상 규칙에 따른 것입니다.

존재, 하위 사설 토토 사이트가 완전히 평가 될 것이라고 가정하는 것은 현명하지 않습니다.

row_constructorin (SubQuery)

이 형태의 왼쪽에 설명 된대로 행 생성자입니다.섹션 4.2.13. 오른쪽은 괄호로 된 서브 쿼리이며 왼쪽 행에 표현식이있는 것만 큼 많은 열을 반환해야합니다.istrue불평등 한 서브 사설 토토 사이트 행만 발견되면 (하위 사설 토토 사이트가 행을 반환하는 경우 포함). 결과는입니다.거짓동일한 행이있는 경우.

평소와 같이 행의 널 값은 SQL 부울 표현식의 일반 규칙에 따라 결합됩니다. 해당하는 모든 멤버가 무감각하고 같으면 두 행이 동일하게 간주됩니다.is null.

9.23.4. Any/일부

표현 운영자any (SubQuery)
표현 운영자일부 (SubQuery)

오른쪽은 괄호로 된 서브 쿼리이며 정확히 하나의 열을 반환해야합니다. 왼쪽 표현식이 평가되고 주어진 것을 사용하여 하위 퀘스트 결과의 각 행과 비교됩니다.운영자, 부울 결과를 산출해야합니다. 의 결과Anyistrue실제 결과가 얻은 경우. 결과는입니다.거짓17472_17555

일부Any. in= Any.

성공이없고 적어도 하나의 오른쪽 행이 운영자의 결과에 null을 얻는 경우의 결과는Any구성은 거짓이 아닌 null이됩니다. 이것은 널 값의 부울 조합에 대한 SQL의 정상 규칙에 따른 것입니다.

존재, 하위 사설 토토 사이트가 완전히 평가 될 것이라고 가정하는 것은 현명하지 않습니다.

row_constructor 운영자any (SubQuery)
row_constructor 운영자일부 (SubQuery)

이 형태의 왼쪽Any에 설명 된대로 행 생성자입니다.섹션 4.2.13. 오른쪽은 괄호로 된 서브 쿼리이며 왼쪽 행에 표현식이있는 것만 큼 많은 열을 반환해야합니다.운영자. 의 결과Anyistrue비교가 하위 퀘스트 행에 대해 true를 반환하는 경우. 결과는입니다.거짓비교가 모든 서브 사설 토토 사이트 행에 대해 False를 반환하는 경우 (하위 사설 토토 사이트가 행이없는 경우를 포함하여). 하위 사설 토토 사이트 행과 비교하지 않으면 결과는 널입니다. 적어도 하나의 비교는 null을 반환합니다.

참조섹션 9.24.5행 생성자 비교의 의미에 대한 자세한 내용.

9.23.5. all

표현 운영자ALL (SubQuery)

오른쪽은 괄호로 된 서브 쿼리이며 정확히 하나의 열을 반환해야합니다. 왼쪽 표현식이 평가되고 주어진 것을 사용하여 하위 퀘스트 결과의 각 행과 비교됩니다.운영자, 부울 결과를 산출해야합니다. 의 결과allistrue모든 행이 true를 산출하는 경우 (서브 쿼리가 줄이없는 경우 포함). 결과는입니다.거짓잘못된 결과가 발견 된 경우. 하위 사설 토토 사이트 행과 비교하지 않으면 결과는 널입니다. 적어도 하나의 비교가 널 리턴됩니다..

<> all.

존재, 하위 사설 토토 사이트가 완전히 평가 될 것이라고 가정하는 것은 현명하지 않습니다.

row_constructor 운영자ALL (SubQuery)

이 형태의 왼쪽all에 설명 된대로 행 생성자입니다.섹션 4.2.13. 오른쪽은 괄호로 된 서브 쿼리이며 왼쪽 행에 표현식이있는 것만 큼 많은 열을 반환해야합니다.운영자. 의 결과allistrue비교가 모든 서브 쿼리 행에 대해 true를 반환하는 경우 (하위 쿼리가 행이없는 경우 포함). 결과는입니다.거짓비교가 하위 사설 토토 사이트 행에 대해 False를 반환하는 경우. 하위 사설 토토 사이트 행과 비교하지 않으면 결과는 널입니다. 적어도 하나의 비교가 널 리턴됩니다..

참조섹션 9.24.5행 생성자 비교의 의미에 대한 자세한 내용.

9.23.6. 단일 줄 비교

row_constructor 운영자 (SubQuery)

왼쪽은에 설명 된대로 행 생성자입니다.섹션 4.2.13. 오른쪽은 괄호로 된 서브 쿼리이며 왼쪽 행에 표현식이있는 것만 큼 많은 열을 반환해야합니다.

참조섹션 9.24.5행 생성자 비교의 의미에 대한 자세한 내용.

정정 제출

문서에 올바르지 않은 내용이 있으면 일치하지 않습니다.이 양식문서 문제를보고하려면