PostgreSQL 7.3.21 선적 서류 비치 | ||
---|---|---|
10400_10406 | 6 장. 기능 및 운영자 | 다음 |
이 섹션은를 설명합니다.SQL-완성 된 조건부 무지개 토토식 사용 가능postgresql.
팁 :요구 사항을 뛰어 넘는 경우 이러한 조건부 무지개 토토식을 고려하고 싶을 수도 있습니다 보다 무지개 토토적인 프로그래밍으로 저장된 절차를 작성합니다 언어.
CASE조건the결과[언제 ...] [else결과] 끝
theSQL case무지개 토토식은 일반적인 조건입니다 다른 언어의 IF/Else 문과 유사한 무지개 토토.case조항은 어디에서나 사용할 수 있습니다 무지개 토토은 유효합니다.조건a를 반환하는 무지개 토토입니다.부울결과. 결과가 참이면의 값은case무지개 토토은결과. 결과가 False 인 경우 후속언제조항이 검색됩니다 같은 방식. 그렇지 않은 경우언제 조건는 사실입니다 사례 무지개 토토은입니다.결과inelse절. 인 경우else조항은 생략되어 조건이 일치하지 않습니다. 결과는 널입니다.
예 :
= 선택 *에서 test; a --- 1 2 3 = a, a = 1 그런 다음 'one'인 경우 a = 2 때 '2' 다른 '기타' 끝 시험에서; a | 사례 ---+------ 1 | 하나 2 | 둘 3 | 다른
모든 데이터 유형결과무지개 토토은 a 단일 출력 유형. 보다섹션 7.5자세한 내용은
CASE무지개 토토언제valuethe결과[언제 ...] [else결과] 끝
this"Simple" CASE무지개 토토식은 특수한 변형입니다
위의 일반적인 형태. 그만큼무지개 토토계산되어 비교됩니다
모든values in언제하나가 발견 될 때까지 조항
동일한. 일치하지 않으면결과inelse절 (또는 널 값)이 반환됩니다. 이것은와 비슷합니다.스위치
C. 진술
위의 예는 단순한 것을 사용하여 작성할 수 있습니다CASE구문 :
= A, A, CASE A가 1 일 때 '하나' 2 시절 '2' 다른 '기타' 끝 시험에서; a | 사례 ---+------ 1 | 하나 2 | 둘 3 | 다른
Coalesce
(value[, ...])
theCoalesce
함수 리턴
널이 아닌 첫 번째 주장. 이것은 종종입니다
데이터시 널 값에 대한 기본값을 대체하는 데 유용합니다.
예를 들어 디스플레이를 위해 검색됩니다.
Coalesce 선택 (설명, short_description, '(없음)'...
Nullif
(value1, value2)
theNullif
함수는 a
널 값이라면value1andvalue2동일합니다. 그렇지 않으면 반환value1. 이것은 사용될 수 있습니다
의 역 작동 수행Coalesce
위에 주어진 예 :
nullif (value, '(none)') ... 선택
팁 :
Coalesce
andNullif
단지 속기입니다CASE무지개 토토. 그들은 실제로입니다 로 변환CASEa 처리의 초기 단계 및 후속 처리 그것이 다루고 있다고 생각합니다CASE. 따라서 잘못된Coalesce
또는Nullif
사용법이 그려 질 수 있습니다 를 나타내는 오류 메시지CASE.