首页  >  文章  >  数据库  >  为什么 MySQL 将“TRUE 或 TRUE 和 FALSE”评估为 true?

为什么 MySQL 将“TRUE 或 TRUE 和 FALSE”评估为 true?

王林
王林转载
2023-09-04 21:29:021305浏览

为什么 MySQL 将“TRUE 或 TRUE 和 FALSE”评估为 true?

MySQL将“TRUE or TRUE and FALSE”评估为true,因为AND比OR具有更高的优先级,即AND在OR之前被评估。

MySQL按照以下方式评估上述语句。首先评估AND运算符 −

(TRUE or (TRUE AND FALSE))

语句 (TRUE AND FALSE) 的结果是 FALSE。然后是第二个语句 评估如下 -

(TRUE or FALSE)

上面的语句给出的结果为 TRUE。

让我们一一实现 -

mysql> select (TRUE AND FALSE);
+------------------+
| (TRUE AND FALSE) |
+------------------+
|                0 |
+------------------+
1 row in set (0.00 sec)

现在我们可以将上述结果放在AND条件的位置−

mysql> select (TRUE or FALSE);
+-----------------+
| (TRUE or FALSE) |
+-----------------+
|               1 |
+-----------------+
1 row in set (0.00 sec)

现在再次检查整个条件 −

mysql> select (TRUE or TRUE and FALSE);

这将产生以下输出 −

+--------------------------+
| (TRUE or TRUE and FALSE) |
+--------------------------+
|                        1 |
+--------------------------+
1 row in set (0.00 sec)

以上是为什么 MySQL 将“TRUE 或 TRUE 和 FALSE”评估为 true?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:tutorialspoint.com。如有侵权,请联系admin@php.cn删除