📅  最后修改于: 2020-11-17 05:27:29             🧑  作者: Mango
在本节中,我们将学习IF()函数在MySQL中的工作方式。 IF函数是MySQL控制流函数,该函数根据给定的条件返回一个值。换句话说,IF函数用于验证MySQL中的函数。当给定条件的值为真时,IF函数将返回“是”,而当条件的值为“假”时,IF函数将返回“否”值。根据使用该函数的上下文,它以字符串或数字形式返回值。有时,此函数称为IF-ELSE和IF THAN ELSE函数。
IF函数采用三个表达式,其中第一个表达式将被求值。如果第一个表达式的计算结果为true,而不是null,也不为零,则返回第二个表达式。如果结果为假,则返回第三个表达式。
IF ( expression 1, expression 2, expression 3)
Parameter | Requirement | Descriptions |
---|---|---|
Expression 1 | Required | It is a value, which is used for validation. |
Expression 2 | Optional | It returns a value when the condition evaluates to true. |
Expression 3 | Optional | It returns a value when the condition evaluates to false. |
IF函数的返回类型可以计算如下:
IF函数可以支持以下MySQL版本:
注意:IF函数与IF语句不同。因此不要混淆IF函数和IF语句。
让我们通过以下示例了解MySQL IF函数。我们可以将IF函数直接用于SELECT语句。
SELECT IF(200>350,'YES','NO');
在上面的函数,(200> 350)是要评估的条件。如果条件为true,则返回值为YES,如果条件为false,则返回NO。
输出:
SELECT IF(251 = 251,' Correct','Wrong');
在上述函数,(251 = 251)是要评估的条件。如果条件为true,则返回值Correct,如果条件为false,则返回错误输出。
输出:
SELECT IF(STRCMP('Rinky Ponting','Yuvraj Singh')=0, 'Correct', 'Wrong');
上面的示例比较了两个字符串。如果两个字符串相同,则返回正确。否则,IF函数将返回错误输出。
输出:
在这里,我们将创建一个表“ student”并执行IF函数。
现在,运行以下MySQL查询。该语句返回学生表的姓氏,如果年龄大于20,则返回成熟表。否则,IF函数将返回Immature。
SELECT lastname,
IF(age>20,"Mature","Immature")
As Result
FROM student;
输出:
当上述MySQL语句成功运行时,将给出以下输出。