이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다PostgreSQL : 문서 : 17 : 9.24. 하위 사설 토토 사이트 표현버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

9.22. 하위 쿼리 표현

이 섹션은를 설명합니다.SQL-이용 가능한 서브 배트맨 토토 표현식 안에PostgreSQL. 모든 이 섹션에 기록 된 표현 양식은 부울 반환됩니다 (참/거짓) 결과.

9.22.1. 존재

존재 (SubQuery)

의 주장존재is 임의select성명서 또는SubQuery. 하위 퀘스트는 평가됩니다 행을 반환하는지 확인하십시오. 적어도 돌아 오면 하나의 행, 결과존재is"True"; 하위 배트맨 토토가 반환되는 경우 행, 결과존재is"false".

하위 배트맨 토토는 주변의 변수를 참조 할 수 있습니다 한 번의 평가 중 상수 역할을하는 배트맨 토토 하위 배트맨 토토.

하위 배트맨 토토는 일반적으로 충분히 오래 실행됩니다. 적어도 하나의 행이 반환되는지 여부를 결정합니다. 완성. 측면이있는 하위 배트맨 토토를 쓰는 것은 현명하지 않습니다. 효과 (호출 시퀀스 함수와 같은); 측면 효과가 발생할 수 없을 수도 있습니다.

결과는 행이 있는지 여부에만 의존하기 때문입니다. 반환, 해당 행의 내용이 아닌 출력 하위 배트맨 토토 목록은 일반적으로 중요하지 않습니다. 일반적인 코딩 컨벤션은 모든 것을 쓰는 것입니다존재양식의 테스트존재합니다 (SELECT 1 WHERE ...). 그러나이 규칙에는 다음과 같은 예외가 있습니다 사용하는 하위 쿼리교차.

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

COL1을 선택하십시오
Tab1에서
존재하는 곳 (tab2에서 1을 선택하여 col2 = tab1.col2);

9.22.2. in

표현in (SubQuery)

오른쪽은 괄호로 된 서브 쿼리입니다 정확히 하나의 열을 반환합니다. 왼쪽 표현은입니다 하위 퀘스트 결과의 각 행과 평가 및 비교. 그만큼 의 결과inis"True"동일한 하위 배트맨 토토 행이있는 경우. 그만큼 결과는"false"동일한 행이없는 경우 발견 된 (하위 배트맨 토토가 반환되는 경우 포함 줄).

왼쪽 표현이 NULL을 생산하는 경우 또는 동일한 오른쪽 값이없고 적어도 하나가 있습니다. 오른쪽 행은 NULL을 생산합니다.in구성은 거짓이 아닌 null이됩니다. 이것은 안에 있습니다 부울 조합에 대한 SQL의 정상적인 규칙에 따라 널 값.

with존재하위 배트맨 토토가 완전히 평가 될 것입니다.

row_constructorin (SubQuery)

이 형태의 왼쪽in에 설명 된대로 행 생성자입니다.섹션 4.2.13. 오른쪽은 괄호로 된 하위 퀘스트이며 있는 것만 큼 많은 열을 반환해야합니다. 왼쪽 줄의 표현. 왼쪽 표현이 있습니다 하위 쿼리의 각 행과 관련하여 평가 및 비교 결과. 의 결과inis"True"동일한 하위 배트맨 토토 행이있는 경우. 그만큼 결과는"false"동일한 행이없는 경우 발견 된 (하위 배트맨 토토가 반환되는 경우 포함 줄).

평소와 같이 행의 널 값은 SQL 부울 표현의 정상적인 규칙. 두 줄입니다 모든 해당 회원이라면 동등한 것으로 간주됩니다 무감각하고 평등; 해당하는 경우 행이 불평등합니다 회원은 무감각하고 불평등합니다. 그렇지 않으면 그 결과 행 비교는 알려지지 않았습니다 (null). 모든 행당 결과가 발생하는 경우 적어도 하나의 널이있는 사람이 불평등하거나 널이면 의 결과inis null.

9.22.3. 안에

표현in (SubQuery)

오른쪽은 괄호로 된 하위 쿼리입니다 정확히 하나의 열을 반환합니다. 왼쪽 표현은입니다 하위 퀘스트 결과의 각 행과 평가 및 비교. 그만큼 의 결과is"True"불평등 한 서브 배트맨 토토 행만 발견하면 (하위 배트맨 토토가 행을 반환하는 경우 포함). 그만큼 결과는"false"동일한 행 인 경우 발견된다.

16438_16605구성은 사실이 아니라 무효가됩니다. 이것은 부울 조합에 대한 SQL의 정상 규칙에 따라 널 값의

with존재, 가정은 현명하지 않습니다 하위 배트맨 토토가 완전히 평가 될 것입니다.

row_constructorin (SubQuery)

이 형태의 왼쪽안에에 설명 된대로 행 생성자입니다.섹션 4.2.13. 오른쪽은 괄호로 된 하위 퀘스트이며 있는 것만 큼 많은 열을 반환해야합니다. 왼쪽 줄의 표현. 왼쪽 표현이 있습니다 하위 쿼리의 각 행과 관련하여 평가 및 비교 결과. 의 결과is"True"불평등 한 하위 배트맨 토토 행만 발견됩니다 (하위 배트맨 토토가 반환되는 경우 포함 줄). 결과는입니다."false"동일한 행이 발견되었습니다.

평소와 같이 행의 널 값은 SQL 부울 표현의 정상적인 규칙. 두 줄입니다 모든 해당 회원이라면 동등한 것으로 간주됩니다 무감각하고 평등; 해당하는 경우 행이 불평등합니다 회원은 무감각하고 불평등합니다. 그렇지 않으면 그 결과 행 비교는 알려지지 않았습니다 (null). 모든 행당 결과가 발생하는 경우 적어도 하나의 널이있는 사람이 불평등하거나 널이면 의 결과is null.

9.22.4. Any/일부

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

오른쪽은 괄호로 된 하위 쿼리입니다 정확히 하나의 열을 반환합니다. 왼쪽 표현은입니다 사용하는 하위 쿼리 결과의 각 행과 평가 및 비교 주어진운영자부울 결과를 낳습니다. 의 결과anyis"True"진정한 결과가 얻어집니다. 결과는입니다."false"진정한 결과가 발견되지 않은 경우 (포함 서브 배트맨 토토가 행을 반환하는 경우).

일부동의어입니다Any. in= Any.

성공이없고 적어도 하나가 있다면 오른쪽 행은 연산자의 결과에 대해 NULL을 얻습니다 의 결과Any구성이 될 것입니다 널, 거짓이 아닙니다. 이것은 SQL의 정상 규칙에 따른 것입니다 널 값의 부울 조합.

with존재, 그것은 현명하지 않습니다 하위 배트맨 토토가 완전히 평가 될 것입니다.

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

이 형태의 왼쪽any에 설명 된대로 행 생성자입니다.섹션 4.2.13. 오른쪽은 괄호로 된 하위 퀘스트이며 있는 것만 큼 많은 열을 반환해야합니다. 왼쪽 줄의 표현. 왼쪽 표현이 있습니다 하위 쿼리의 각 행과 관련하여 평가 및 비교 결과, 주어진 사용운영자. 의 결과Anyis"True"if 모든 하위 배트맨 토토 행에 대해 비교가 true를 반환합니다. 결과는입니다."false"비교가 반환되는 경우 모든 서브 배트맨 토토 행에 대해 허위 ( 서브 배트맨 토토는 행을 반환합니다). 비교하면 결과가 무효입니다 어떤 행에 대해서도 True를 반환하지 않으며 AT에 대해 NULL을 반환합니다. 최소 한 줄.

참조섹션 9.23.5Row-Wise의 의미에 대한 자세한 내용 비교.

9.22.5. all

표현 운영자all (SubQuery)

오른쪽은 괄호로 된 하위 쿼리입니다 정확히 하나의 열을 반환합니다. 왼쪽 표현은입니다 사용하는 하위 쿼리 결과의 각 행과 평가 및 비교 주어진운영자부울 결과를 낳습니다. 의 결과allis"True"모두 행은 사실 (하위 배트맨 토토가 반환되는 경우 포함 줄 없음). 결과는입니다."false"if 잘못된 결과가 발견됩니다. 비교하면 결과가 무효입니다 행에 대해 False를 반환하지 않으며 AT에 대해 NULL을 반환합니다. 최소 한 줄.

< all.

with존재하위 배트맨 토토가 완전히 평가 될 것입니다.

row_constructor 운영자all (SubQuery)

이 형태의 왼쪽all에 설명 된대로 행 생성자입니다.섹션 4.2.13. 오른쪽은 괄호로 된 하위 퀘스트이며 있는 것만 큼 많은 열을 반환해야합니다. 왼쪽 줄의 표현. 왼쪽 표현이 있습니다 하위 쿼리의 각 행과 관련하여 평가 및 비교 결과, 주어진 사용운영자. 의 결과allis"True"비교는 모든 서브 배트맨 토토 행에 대해 true를 반환합니다 (포함 서브 배트맨 토토가 행을 반환하는 경우). 결과는입니다."false"비교가 반환되는 경우 하위 배트맨 토토 행에 대해 거짓. 결과는 null입니다 하위 배트맨 토토 행에 대해서는 비교가 거짓을 반환하지 않습니다. 최소 한 줄에 null을 반환합니다.

참조섹션 9.23.5Row-Wise의 의미에 대한 자세한 내용 비교.

9.22.6. Row-wise 비교

row_constructor 운영자(SubQuery)

왼쪽은에 설명 된대로 행 생성자입니다.섹션 4.2.13. 오른쪽은 괄호로 된 하위 퀘스트이며 있는 것만 큼 많은 열을 반환해야합니다. 왼쪽 줄의 표현. 또한, 하위 쿼리 둘 이상의 행을 반환 할 수 없습니다. (0 행을 반환하면 결과는 널로 취해집니다.) 왼쪽이 평가됩니다. 그리고 단일 하위 쿼리 결과 행과 경사로 비교.

참조섹션 9.23.5Row-Wise의 의미에 대한 자세한 내용 비교.