Fre*_*all 146 mysql sql concat concatenation
这是我想要做的:
当前表:
+----+-------------+
| id | data |
+----+-------------+
| 1 | max |
| 2 | linda |
| 3 | sam |
| 4 | henry |
+----+-------------+
Run Code Online (Sandbox Code Playgroud)
神秘查询(类似的东西"UPDATE table SET data = CONCAT(data, 'a')")
结果表:
+----+-------------+
| id | data |
+----+-------------+
| 1 | maxa |
| 2 | lindaa |
| 3 | sama |
| 4 | henrya |
+----+-------------+
Run Code Online (Sandbox Code Playgroud)
而已!我只需要在一个查询中完成它,但似乎找不到方法.我在bluehost上使用mySQL(我认为它的版本是4.1)
感谢大家.
Mar*_*c B 240
这几乎是你所需要的:
mysql> select * from t;
+------+-------+
| id | data |
+------+-------+
| 1 | max |
| 2 | linda |
| 3 | sam |
| 4 | henry |
+------+-------+
4 rows in set (0.02 sec)
mysql> update t set data=concat(data, 'a');
Query OK, 4 rows affected (0.01 sec)
Rows matched: 4 Changed: 4 Warnings: 0
mysql> select * from t;
+------+--------+
| id | data |
+------+--------+
| 1 | maxa |
| 2 | lindaa |
| 3 | sama |
| 4 | henrya |
+------+--------+
4 rows in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)
不知道你为什么遇到麻烦,虽然我在5.1.41上测试了这个
DS_*_*per 10
UPDATE mytable SET spares = CONCAT(spares, ',', '818') WHERE id = 1
Run Code Online (Sandbox Code Playgroud)
不适合我.
备件是NULL默认的,但它的varchar
通过将NULL值包装在空中来转换值COALESCE
"UPDATE table SET data = CONCAT(COALESCE(`data`,''), 'a')"
Run Code Online (Sandbox Code Playgroud)
要么
请改用CONCAT_WS:
"UPDATE table SET data = CONCAT_WS(',',data, 'a')"
Run Code Online (Sandbox Code Playgroud)
UPDATE
myTable
SET
col = CONCAT( col , "string" )
Run Code Online (Sandbox Code Playgroud)
无法解决。请求语法正确,但是执行时“影响0行”。
解决方案是:
UPDATE
myTable
SET
col = CONCAT( myTable.col , "string" )
Run Code Online (Sandbox Code Playgroud)
那工作。
| 归档时间: |
|
| 查看次数: |
284337 次 |
| 最近记录: |