这是我想要做的:
当前表格:
+----+-------------+
| id | data |
+----+-------------+
| 1 | max |
| 2 | linda |
| 3 | sam |
| 4 | henry |
+----+-------------+ 神秘查询(类似于"UPDATE table SET data = CONCAT(data, 'a')" )
结果表:
+----+-------------+
| id | data |
+----+-------------+
| 1 | maxa |
| 2 | lindaa |
| 3 | sama |
| 4 | henrya |
+----+-------------+ 就是这样!我只需要在一个查询中完成,但似乎找不到一种方法。我在bluehost上使用的是mySQL (我想是4.1版)
谢谢大家。
发布于 2010-11-09 05:46:15
这几乎就是您所需要的:
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)不知道为什么会有问题,尽管我在5.1.41上进行了测试
发布于 2015-11-04 18:02:13
通过将空字符串包装在COALESCE中来转换NULL值
"UPDATE table SET data = CONCAT(COALESCE(`data`,''), 'a')"或
请改用CONCAT_WS:
"UPDATE table SET data = CONCAT_WS(',',data, 'a')"发布于 2012-09-23 18:12:14
UPDATE mytable SET spares = CONCAT(spares, ',', '818') WHERE id = 1对我不起作用。
spares默认情况下是NULL,但它的varchar
https://stackoverflow.com/questions/4128335
复制相似问题