8
我正在使用sqlite3,因此使用||
运算符连接字符串。MySQL可以使用||连接字符串
在稍后的日子我想转移到MySQL,因此如果不需要更改代码就会很好。我通常使用concat()
在MySQL中连接。 ||
是否也可以工作,或者我将不得不修改我的代码?或者还有其他解决方案吗?顺便说一下,我在Ruby on Rails 3.1中编写代码。
我正在使用sqlite3,因此使用||
运算符连接字符串。MySQL可以使用||连接字符串
在稍后的日子我想转移到MySQL,因此如果不需要更改代码就会很好。我通常使用concat()
在MySQL中连接。 ||
是否也可以工作,或者我将不得不修改我的代码?或者还有其他解决方案吗?顺便说一下,我在Ruby on Rails 3.1中编写代码。
||
也适用于MySQL,但您需要将sql_mode
设置为PIPES_AS_CONCAT
。
演示:
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)
谢谢你,这是完美的! –
这也包括在'ansi'模式下运行(这是我强烈推荐的):http://dev.mysql.com/doc/refman/5.5/en/server-sql-mode.html#sqlmode_ansi –