首页 >数据库 >mysql教程 >'||运算符的优先级如何取决于PIPES_AS_CONCAT SQL模式?'

'||运算符的优先级如何取决于PIPES_AS_CONCAT SQL模式?'

PHPz
PHPz转载
2023-08-23 13:33:14733浏览

我们知道,在MySQL中,默认情况下||运算符是逻辑OR运算符,但它取决于PIPES_AS_CONCAT SQL模式。如果启用了PIPES_AS_CONCAT SQL模式,则||运算符将作为字符串连接运算符工作。此时,它的优先级将介于^和一元运算符之间。以下示例将使其理解−

mysql> Set @C='tutorials';
Query OK, 0 rows affected (0.00 sec)

mysql> Set @D='point';
Query OK, 0 rows affected (0.00 sec)

mysql> Select @C||@D;
+--------+
| @C||@D |
+--------+
|      1 |
+--------+
1 row in set (0.00 sec)

上述查询的结果集显示,|| 作为 OR 运算符,这就是为什么输出为 1 表示为真。

mysql> Set SQL_MODE = 'PIPES_AS_CONCAT';
Query OK, 0 rows affected (0.10 sec)

在启用了PIPES_AS_CONCAT SQL模式之后,||作为CONCAT()函数的同义词,即字符串连接函数。它在以下结果集中显示 −

mysql> Select @C||@D;
+----------------+
| @C||@D         |
+----------------+
| tutorialspoint |
+----------------+
1 row in set (0.00 sec)

以上是'||运算符的优先级如何取决于PIPES_AS_CONCAT SQL模式?'的详细内容。更多信息请关注PHP中文网其他相关文章!

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