12.4.3 Logical Operators逻辑运算符

Table 12.5 Logical Operators逻辑运算符

Name名称Description描述
AND, &&Logical AND逻辑与
NOT, !Negates value否定值
OR, ||Logical OR逻辑或
XORLogical XOR逻辑异或

In SQL, all logical operators evaluate to TRUE, FALSE, or NULL (UNKNOWN). 在SQL中,所有逻辑运算符的计算结果都是TRUEFLASENULL(未知)。In MySQL, these are implemented as 1 (TRUE), 0 (FALSE), and NULL. 在MySQL中,它们被实现为1(TRUE)、0(FLASE)和NULLMost of this is common to different SQL database servers, although some servers may return any nonzero value for TRUE.这对于不同的SQL数据库服务器来说是很常见的,尽管有些服务器可能会返回任何非零值作为TRUE

MySQL evaluates any nonzero, non-NULL value to TRUE. MySQL将任何非零值、非NULL值求值为TRUEFor example, the following statements all assess to TRUE:例如,以下语句均为TRUE

mysql> SELECT 10 IS TRUE;
-> 1
mysql> SELECT -10 IS TRUE;
-> 1
mysql> SELECT 'string' IS NOT NULL;
-> 1