>  기사  >  데이터 베이스  >  MySQL은 조건부 판단 기능을 설명합니다

MySQL은 조건부 판단 기능을 설명합니다

coldplay.xixi
coldplay.xixi앞으로
2021-03-03 09:39:492527검색

MySQL은 조건부 판단 기능을 설명합니다

함수:

(1)IF(expr,v1,v2) function
(2)IFNULL(v1,v2) function
(3)CASE function

(관련 무료 학습 권장사항: mysql 비디오 튜토리얼 )

(1)if(expr,v1,v2) function
  • if(expr,v1,v2) 함수에서 expr 표현식이 true(expr<>0 및 epr<>null)인 경우 return v1, 그렇지 않으면 v2가 반환됩니다.

[예] if() 함수를 사용하여 조건부 판단을 수행합니다. SQL 문은 다음과 같습니다.

mysql> select if(1>2,2,3),
    -> if(1<2,&#39;yes&#39;,&#39;no&#39;),
    -> if(strcmp('test','test1'),'no','yes');+-------------+--------------------+---------------------------------------+| if(1>2,2,3) | if(1<2,&#39;yes&#39;,&#39;no&#39;) | if(strcmp(&#39;test&#39;,&#39;test1&#39;),&#39;no&#39;,&#39;yes&#39;) |+-------------+--------------------+---------------------------------------+|           3 | yes                | no                                    |+-------------+--------------------+---------------------------------------+1 row in set (0.00 sec)

(2)ifnull(v1,v2) function
  • In ifnull(v1,v2), if v1이 null이 아니면 ifnull()의 반환 값은 v1이고, 그렇지 않으면 반환 값은 v2입니다.
  • v1 또는 v2 중 하나만 명시적으로 null인 경우 if() 함수의 결과 유형은 null이 아닌 표현식의 결과 유형입니다.

[예] ifnull() 함수를 사용하여 조건부 판단을 수행합니다. SQL 문은 다음과 같습니다.

mysql> select ifnull(1,2),ifnull(null,10),ifnull(1/0,'wrong');+-------------+-----------------+---------------------+| ifnull(1,2) | ifnull(null,10) | ifnull(1/0,'wrong') |+-------------+-----------------+---------------------+|           1 |              10 | wrong               |+-------------+-----------------+---------------------+1 row in set (0.00 sec)

(3)case function

1.case expr when v1 then r1 [when v2 then r2] else rn] end

  • 이 함수는 expr 값이 특정 vi와 같으면 해당 위치 이후의 결과가 반환된다는 의미입니다. 모든 값과 같지 않으면 else 이후의 m이 반환됩니다.

[예] 분기 작업을 수행하는 문인 경우 Case 값을 사용하며, SQL 문은 다음과 같습니다.

mysql> select case 2 when 1 then 'one' when 2 then 'two' else 'more' end;+------------------------------------------------------------+| case 2 when 1 then 'one' when 2 then 'two' else 'more' end |+------------------------------------------------------------+| two                                                        |+------------------------------------------------------------+1 row in set (0.00 sec)

2.case when v1 then rv [when v2 then r2] else rn] end

  • 이 함수는 특정 vi 값이 true이면 해당 위치에서 then 이후에 결과를 반환하고, 모든 값이 true가 아니면 else 이후에 rn을 반환합니다.
  • case 표현식의 기본 반환 값 유형은 상황에 따라 모든 반환 값과 호환되는 컬렉션 유형입니다.

[예] 분기 작업을 수행하려면 Case When 문을 사용하세요. SQL 문은 다음과 같습니다.

mysql> select case when 1<0 then 'true' else 'false' end;+--------------------------------------------+| case when 1<0 then 'true' else 'false' end |+--------------------------------------------+| false                                      |+--------------------------------------------+1 row in set (0.00 sec)

관련 무료 학습 권장사항: mysql tutorial(동영상)

위 내용은 MySQL은 조건부 판단 기능을 설명합니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제