首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL更新附加字符串连接不起作用的字段中的所有值

SQL更新附加字符串连接不起作用的字段中的所有值
EN

Stack Overflow用户
提问于 2010-11-09 05:41:29
回答 6查看 364K关注 0票数 181

这是我想要做的:

当前表格:

代码语言:javascript
复制
+----+-------------+  
| id | data        |  
+----+-------------+  
|  1 | max         |  
|  2 | linda       |  
|  3 | sam         |  
|  4 | henry       |  
+----+-------------+  

神秘查询(类似于"UPDATE table SET data = CONCAT(data, 'a')" )

结果表:

代码语言:javascript
复制
+----+-------------+  
| id | data        |  
+----+-------------+  
|  1 | maxa        |  
|  2 | lindaa      |  
|  3 | sama        |  
|  4 | henrya      |  
+----+-------------+  

就是这样!我只需要在一个查询中完成,但似乎找不到一种方法。我在bluehost上使用的是mySQL (我想是4.1版)

谢谢大家。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2010-11-09 05:46:15

这几乎就是您所需要的:

代码语言:javascript
复制
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上进行了测试

票数 297
EN

Stack Overflow用户

发布于 2015-11-04 18:02:13

通过将空字符串包装在COALESCE中来转换NULL

代码语言:javascript
复制
"UPDATE table SET data = CONCAT(COALESCE(`data`,''), 'a')"

请改用CONCAT_WS

代码语言:javascript
复制
"UPDATE table SET data = CONCAT_WS(',',data, 'a')"
票数 13
EN

Stack Overflow用户

发布于 2012-09-23 18:12:14

代码语言:javascript
复制
UPDATE mytable SET spares = CONCAT(spares, ',', '818') WHERE id = 1

对我不起作用。

spares默认情况下是NULL,但它的varchar

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4128335

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档