推荐设备MORE

如何自身建立网站—H5企业网站

如何自身建立网站—H5企业网站

行业新闻

MYSQL中case when英语的语法的功效

日期:2021-04-08
我要分享
CASE case_valueWHEN when_value THEN statement_list [WHEN when_value THEN statement_list] ... [ELSE statement_list]END CASE或CASEWHEN search_condition THEN statement_list [WHEN search_condition THEN statement_list] ... [ELSE statement_list]END CASE

CASE储存程序 的句子完成了一个繁杂的标准构造。

留意:也是有一个表述,我觉得同于这儿叙述的 阐述。该 申明不可以有一个 条文,只是停止 而并不是。 CASE CASE CASEELSE NULLEND CASEEND

CASE英语的语法表明:

针对第一个英语的语法,case_value是一个表述式。将该值与when_value每一个WHEN子句中的表述式开展 较为, 直至在其中一个相同。当when_value寻找公平时,相对的THEN子句 statement_list实行。假如不 when_value相同,则该 ELSE子句 statement_list实行,假如有得话。

这一英语的语法不可以用以检测是不是相同, NULL由于NULL = NULL 是不正确的。

针对第二种英语的语法,将对每一个WHEN子句 search_condition表述式开展求值,直至在其中一个为真,这时它的相匹配 THEN子句将 statement_list实行。假如不 search_condition相同,则该 ELSE子句 statement_list实行,假如有得话。

假如否when_value或 search_condition配对检测的值,而且CASE句子不包括一切ELSE子句,则CASE句子不正确結果将找不着Case。

每一个statement_list由一个或好几个SQL句子构成; 一个空的 statement_list不是容许的。

CASE编码实例:

1、要解决沒有一切值与一切WHEN子句配对的状况 ,请应用ELSE 包括空白页 BEGIN ... END块的状况,以下所显示。


DELIMITER |CREATE PROCEDURE p()BEGINDECLARE v INT DEFAULT 1;CASE vWHEN 2 THEN SELECT v;WHEN 3 THEN SELECT 0;ELSEBEGINEND;END CASE;END; |