Union
, case
및 관련 구성SQLUnion
구성은 단일 결과 세트가 되려면 다른 유형을 일치시켜야합니다. 해상도 알고리즘은 Union 쿼리의 각 출력 열에 별도로 적용됩니다. 그만큼Intersect
and제외
CROPORTS는와 같은 방식으로 다른 배트맨 토토을 해결합니다Union
. 를 포함한 일부 다른 구조물CASE
, 배열
, 값
및가장 큰
and최소
함수, 동일한 알고리즘을 사용하여 구성 요소 표현식을 일치시키고 결과 데이터 배트맨 토토을 선택합니다.
해상도 배트맨 토토Union
, CASE
및 관련 구성
모든 입력이 같은 배트맨 토토 인 경우알 수없는
, 해당 배트맨 토토으로 해결.
입력이 도메인 배트맨 토토 인 경우 모든 후속 단계에 대해 도메인의 기본 배트맨 토토으로 취급하십시오.[12]
모든 입력이 배트맨 토토 인 경우알 수없는
, 배트맨 토토으로 해결텍스트
(스트링 범주의 선호하는 배트맨 토토). 그렇지 않으면,알 수없는
나머지 규칙의 목적 상 입력이 무시됩니다.
비 unknown 입력이 모두 동일한 배트맨 토토 범주가 아닌 경우 실패합니다.
첫 번째 비 unknown 입력 배트맨 토토을 후보 배트맨 토토으로 선택한 다음 서로를 고려하지 않은 입력 배트맨 토토, 왼쪽에서 오른쪽으로 고려하십시오.[13]후보 배트맨 토토을 다른 배트맨 토토으로 암시 적으로 변환 할 수 있지만 그 반대가 아닌 경우 다른 배트맨 토토을 새 후보 배트맨 토토으로 선택하십시오. 그런 다음 나머지 입력을 계속 고려하십시오. 이 프로세스의 어느 단계에서 선호하는 배트맨 토토이 선택된 경우 추가 입력을 고려하여 중지하십시오.
모든 입력을 최종 후보 배트맨 토토으로 변환합니다. 주어진 입력 배트맨 토토에서 후보 배트맨 토토으로 암시 적 변환이없는 경우 실패.
일부 예제가 따릅니다.
예 10.10. Union에서 지정된 유형을 사용한 유형 해상도
텍스트 'A'로 '텍스트'를 선택하십시오. Union Select 'b'; 텍스트 ------ 에이 비 (2 줄)
여기, 알 수없는 유형의 리터럴'b'
배트맨 토토으로 해결됩니다텍스트
.
예 10.11. 간단한 조합에서 배트맨 토토 해상도
"Numeric"Union Select 1으로 1.2를 선택하십시오. 숫자 ------- 1 1.2 (2 줄)
문자 그럴1.2
is type숫자
및Integer
value1
암시 적으로 캐스트 될 수 있습니다숫자
, 해당 배트맨 토토이 사용됩니다.
예 10.12. 전달 된 노조의 배트맨 토토 해상도
"Real"Union Select Cast ( '2.2'As As Al 진짜 ------ 1 2.2 (2 줄)
여기, 배트맨 토토 이후Real
암시 적으로 캐스트 될 수 없습니다Integer
그러나정수
암시 적으로 캐스트 될 수 있습니다Real
, Union 결과 유형은로 해결됩니다.Real
.
예 10.13. 중첩 노조의 배트맨 토토 해상도
선택 NULL UNION SELECT NULL UNION SELECT 1; 오류 : Union 유형 텍스트와 정수는 일치 할 수 없습니다
이 실패는이기 때문에 발생합니다.PostgreSQL다중 취급Union
s 쌍별 작업의 둥지로서; 즉,이 입력은와 동일합니다.
(선택 NULL UNION SELEC SELECT NULL) UNION SELECT 1;
내부Union
방출 배트맨 토토으로 해결되었습니다텍스트
, 위에 주어진 규칙에 따라. 그런 다음 외부Union
배트맨 토토의 입력이 있습니다텍스트
andInteger
, 관찰 된 오류로 이어집니다. 가장 왼쪽을 확인하여 문제를 해결할 수 있습니다Union
원하는 결과 유형의 최소한 입력이 있습니다.
Intersect
and제외
작업은 마찬가지로 쌍으로 해결됩니다. 그러나이 섹션에 설명 된 다른 구성은 한 해상도 단계에서 모든 입력을 고려합니다.
문서에 맞지 않는 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를보고하려면