윈 토토 : 문서 : 9.4 : 윈 토토 | |||
---|---|---|---|
PostgreSQL : 문서 : 9.4 : 토토 핫 조작 함수 | PostgreSQL : 문서 : 9.4 : 스포츠 토토 결과 및 연산자 | 제 9 장 기능 및 연산자 | PostgreSQL : 문서 : 9.4 : 스포츠 토토 사이트 함수 및 연산자 |
이 섹션은를 설명합니다.SQL-이용 가능.postgresql.
팁 :귀하의 요구가 이러한 조건부 윈 토토식의 기능을 넘어서면보다 윈 토토적인 프로그래밍 언어로 저장된 절차를 작성하는 것이 좋습니다..
theSQL case윈 토토식은 다른 프로그래밍 언어의 IF/Else 문과 유사한 일반적인 조건 윈 토토식입니다.
CASE조건the결과[언제 ...] [else결과] 끝
case윈 토토이 유효한 곳에서 조항을 사용할 수 있습니다. 각조건a를 반환하는 윈 토토입니다.부울결과. 조건의 결과가 참이면의 값은CASE윈 토토은결과조건을 따르는 것은CASE윈 토토이 처리되지 않았습니다. 조건의 결과가 사실이 아닌 경우, 후속언제조항은 같은 방식으로 검사됩니다. 그렇지 않은 경우언제 조건true,의 값은입니다.CASE윈 토토은결과의else절. 인 경우else조항이 생략되고 조건이 참이없고 결과는 널이 없습니다.
예 :
선택 *에서 Test에서 선택; 에이 --- 1 2 3 A, a = 1 그런 다음 'one'인 경우 a = 2 때 '2' 다른 '기타' 끝 시험에서; A | 사례 ---+------ 1 | 하나 2 | 둘 3 | 다른
모든 데이터 유형결과윈 토토식은 단일 출력 유형으로 변환 할 수 있어야합니다. 보다PostgreSQL : 문서 : 9.4 : 무지개 토토, Case 및 관련 구성자세한 내용은
a"Simple"형태CASE위의 일반 형태의 변형 인 윈 토토 :
CASE윈 토토언제valuethe결과[언제 ...] [else결과] 끝
첫 번째윈 토토계산 된 다음 각에 비해value윈 토토언제윈 토토가 발견 될 때까지 조항. 일치하지 않으면결과의else절 (또는 널 값)이 반환됩니다. 이것은와 비슷합니다.스위치
C. 진술
위의 예는 단순한 것을 사용하여 작성할 수 있습니다CASE구문 :
a, a, CASE A가 1 일 때 '하나' 2 시절 '2' 다른 '기타' 끝 시험에서; A | 사례 ---+------ 1 | 하나 2 | 둘 3 | 다른
aCASE윈 토토은 결과를 결정하는 데 필요하지 않은 하위 윈 토토을 평가하지 않습니다. 예를 들어, 이것은 부서별 실패를 피할 수있는 가능한 방법입니다 :
선택 ... x < 0 일 때 y/x 1.5 else false end;
참고 :설명대로섹션 4.2.14"CASE필요한 하위 윈 토토 만 평가 "예를 들어 상수1/0Subexpression은 일반적으로 A 내에 있더라도 계획 시간에 영역의 실패를 초래합니다.CASE런 타임에 결코 입력되지 않을 팔.
Coalesce
(value[, ...])
theCoalesce
함수는 NULL이 아닌 첫 번째 인수를 반환합니다. NULL은 모든 인수가 NULL 인 경우에만 반환됩니다. 표시를 위해 데이터가 검색 될 때 NULL 값의 기본값을 대체하는 데 종종 사용됩니다.
Coalesce 선택 (설명, Short_description, '(없음)'...
이것은 반환설명null이 아닌 경우short_description그것이 무효가 아닌 경우, 그렇지 않으면(없음).
aCASE윈 토토,Coalesce
결과를 결정하는 데 필요한 인수 만 평가합니다. 즉, 첫 번째가 아닌 논증의 권리에 대한 논쟁은 평가되지 않습니다. 이 SQL 표준 기능은와 유사한 기능을 제공합니다.NVL
andifnull
, 다른 일부 데이터베이스 시스템에서 사용됩니다.
Nullif
(value1, value2)
theNullif
함수는 널 값을 반환합니다.value1Equalsvalue2; 그렇지 않으면 반환value1. 이것은의 역 작동을 수행하는 데 사용될 수 있습니다.Coalesce
위에 주어진 예 :
nullif (value, '(없음)'... 선택
이 예에서 ifvalueis(없음), null이 반환됩니다. 그렇지 않으면value반환됩니다.
Greatest
(value[, ...])
최소
(value[, ...])
theGreatest
and최소
함수 숫자 수정 목록에서 가장 크거나 작은 값을 선택하십시오. 윈 토토식은 모두 공통 데이터 유형으로 전환 할 수 있어야하며 결과의 유형이됩니다 (참조PostgreSQL : 문서 : 9.4 : 무지개 토토, Case 및 관련 구성자세한 내용). 목록의 널 값은 무시됩니다. 결과는 모든 윈 토토식이 Null로 평가되는 경우에만 NULL입니다.
참고Greatest
and최소
는 SQL 표준에 있지 않지만 일반적인 확장입니다. 일부 다른 데이터베이스는 모든 것이 모두 null 일 때가 아닌 인수가 널이면 NULL을 반환합니다.