>  기사  >  데이터 베이스  >  SQL의 iif 문에 대한 자세한 설명

SQL의 iif 문에 대한 자세한 설명

黄舟
黄舟원래의
2017-02-20 11:50:244255검색

[소개] IIf는 논리 테스트를 통해 결정된 두 개의 숫자 또는 문자열 값 중 하나를 반환합니다. 구문 NumericIIf(«Logical Expression», «Numeric Expression1», «Numeric Expression2») If «Logica

IIf
는 논리 테스트에 의해 결정된 두 개의 숫자 또는 문자열 값 중 하나를 반환합니다. 하나.

구문
Number

IIf(«Logical Expression», «Numeric Expression1», «Numeric Expression2»)

«Logical Expression»가 TRUE이면 이 함수는 «Numeric Expression1»을 반환하고, 그렇지 않으면 «Numeric Expression2»를 반환합니다.

문자열

IIf(«Logical Expression», «String Expression1», «String Expression2»)

«Logical Expression»이 TRUE로 평가되면 이 함수는 «String Expression1»을 반환하고, 그렇지 않으면 «String Expression2»를 반환합니다.

참고
«Logical Expression» 값이 0인 경우에만 표현식이 FALSE로 간주됩니다. 다른 모든 값은 TRUE로 해석됩니다.
검색 기준에 따라 구성원 컬렉션을 생성하기 위해 Iif 함수를 사용하는 것은 권장되지 않습니다. 대신, 필터 함수를 사용하여 지정된 컬렉션의 각 멤버를 논리식에 대해 평가하고 멤버의 하위 컬렉션을 반환합니다.


Number
다음 예에서는 Measures.CurrentMember가 빈 셀인 경우 0을 반환하고 그렇지 않은 경우 1을 반환합니다.

IIf(IsEmpty(Measures.CurrentMember), 0, 1)

String
If Measures.CurrentMember가 빈 단위이면 다음 문자열은 "Yes" 문자열을 반환하고, 그렇지 않으면 "No" 문자열을 반환합니다.
IIf(IsEmpty(Measures.CurrentMember), "Yes", "No")

Access에서는 통계 요약을 위해 IIF 함수를 사용할 수 있습니다. 예를 들어 실제로 지불해야 하는 사용자 수를 알 수 있습니다.



sum(iif(amount> 0) , 1,0)) as num from fee
SQL Server에는 해당 함수가 없는 것 같습니다.
select sum(case when amount>0 then 1 else 0 end) as num from fee
별로 직관적이지 않은 것 같은데, 다른 방법이 있는지 궁금합니다

case when ....then else end
예:

select id,case when bz='1' then xx when bz='2' then yy else zz end as tt from xxx

MID, LEFT 등은 어떻습니까? SQL에서 어떻게 사용하나요?
MID는 SQL에서 하위 문자열입니다.
LEFT는 SQL에서 LEFT입니다.
예: 하위 문자열(필드, 시작 위치, 걸리는 시간)
왼쪽(필드, 걸리는 시간)

SUBSTRING ( 표현식 , 시작 , 길이 )
매개변수
표현식
은 문자열, 이진 문자열, 텍스트, 이미지, 열 또는 열을 포함하는 표현식입니다. 집계 함수가 포함된 표현식을 사용하지 마세요.

start
는 하위 문자열의 시작 위치를 지정하는 정수입니다.

length
는 하위 문자열의 길이(반환될 문자 또는 바이트 수)를 지정하는 정수입니다.


LEFT
문자열의 왼쪽부터 지정된 개수의 문자를 반환합니다.

구문

LEFT ( character_expression , integer_expression )



매개변수
character_expression

문자 또는 이진 데이터 표현식. Character_expression은 상수, 변수 또는 열일 수 있습니다. Character_expression은 암시적으로 varchar로 변환할 수 있는 데이터 유형이어야 합니다. 그렇지 않으면 CAST 함수를 사용하여 Character_expression을 명시적으로 변환합니다.

integer_expression
은 양의 정수입니다. 정수 표현식이 음수이면 빈 문자열이 반환됩니다.

반환 유형
varchar

위는 sql의 iif문에 대한 자세한 설명입니다. 자세한 내용은 PHP 중국어 홈페이지(www. php.cn)!


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.