MySQL可以将字符串与||连接起来

时间:2011-11-21 12:58:53

标签: mysql concatenation string-concatenation

我现在正在使用sqlite3,因此使用||运算符进行连接字符串。

稍后我想转移到MySQL,因此如果不对代码进行任何更改就会很好。我通常使用concat()在MySQL中连接。 ||是否也有效,或者我是否必须修改我的代码?或者还有其他解决方案吗?

顺便说一句,我在Ruby on Rails 3.1中进行编码。

1 个答案:

答案 0 :(得分:23)

||也适用于MySQL,但您需要将sql_mode设置为PIPES_AS_CONCAT

Official Doc

演示:

mysql> select c from tmp;
+------+
| c    |
+------+
| foo  |
| bar  |
+------+
2 rows in set (0.00 sec)

mysql> select c||' hi' from tmp;
+----------+
| c||' hi' |
+----------+
|        0 |
|        0 |
+----------+
2 rows in set, 2 warnings (0.00 sec)

mysql> set sql_mode=PIPES_AS_CONCAT;
Query OK, 0 rows affected (0.00 sec)

mysql> select c||' hi' from tmp;
+----------+
| c||' hi' |
+----------+
| foo hi   |
| bar hi   |
+----------+
2 rows in set (0.00 sec)