请教SQL的一个问题~,如何在update时向某个列的值追加字符?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请教SQL的一个问题~,如何在update时向某个列的值追加字符?相关的知识,希望对你有一定的参考价值。
现在我想update某行某列的值,我只会用一个新的字符串换那个旧的字符串。用什么SQL函数可以直接在原来的字符串后面直接追加上新的字符串~?
我用的是mysql
CONCAT(str1,str2,…)
返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。或许有一个或多个参数。 如果所有参数均为非二进制字符串,则结果为非二进制字符串。 如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。一个数字参数被转化为与之相等的二进制字符串格式;若要避免这种情况,可使用显式类型 cast, 例如: SELECT CONCAT(CAST(int_col AS CHAR), char_col)
mysql> SELECT CONCAT(’My’, ‘S’, ‘QL’);
-> ‘MySQL’
mysql> SELECT CONCAT(’My’, NULL, ‘QL’);
-> NULL
mysql> SELECT CONCAT(14.3);
-> ‘14.3′
CONCAT_WS(separator,str1,str2,…)
CONCAT_WS() 代表 CONCAT With Separator ,是CONCAT()的特殊形式。 第一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个字符串之间。分隔符可以是一个字符串,也可以是其它参数。如果分隔符为 NULL,则结果为 NULL。函数会忽略任何分隔符参数后的 NULL 值。
呵呵,希望能有帮助,^_^ 参考技术A 用concat函数。
update 表名 set 字段=concat(ifnull(字段,''),'要追加的字符串');
********************
测试log:
1、concat连接两个非空字符串
mysql> select concat('bbbb','aaaaa');
+------------------------+
| concat('bbbb','aaaaa') |
+------------------------+
| bbbbaaaaa |
+------------------------+
1 row in set (0.00 sec)
2、concat连接一个空字符串和非空字符串
mysql> select concat(ifnull(NULL,''),'aaaaa');
+---------------------------------+
| concat(ifnull(NULL,''),'aaaaa') |
+---------------------------------+
| aaaaa |
+---------------------------------+
1 row in set (0.00 sec)
---
以上,希望对你有所帮助。本回答被提问者采纳 参考技术B lzp4881 用的是 SQL Server 语法,正规的 SQL 92 语法是:
update tableA set fieldA = fieldA || '新字符串'
该 SQL 在绝大部分支持 SQL 92 的数据库中都通用,例如 Oracle、DB2 等。 参考技术C update 表名 set 列名=列名+'字符串' where 列名='旧的字符串' 参考技术D update table set field=field+'新字符串'
如果某个用户离线,我如何发送消息?
【中文标题】如果某个用户离线,我如何发送消息?【英文标题】:How can I send a message if a certain user goes offline? 【发布时间】:2021-08-23 04:28:20 【问题描述】:我的机器人是为一台服务器制作的,我想在某个用户(机器人)下线时向特定频道发送消息,我该怎么做?
【问题讨论】:
【参考方案1】:首先,检测是否有成员更新,为此您必须启用intents.members
,如this post 中所述。
检测会员更新,有事件on_member_update
:
@bot.event #could be client.event for you
async def on_member_update(before, after):
然后,检查更新的人是否是应该寻找的人:
user = await bot.fetch_user(user_id_of_user_to_look_for) #could be client.fetch_user for you
if user == after:
然后检查状态是否变为离线:
if before.status != discord.Status.offline and after.status == discord.Status.offline:
然后向频道发送消息,其中channel
是您要将消息发送到的频道的频道对象:
await channel.send("User went offline")
参考文献
on_member_update(before, after) bot.fetch_user(user_id) Member.status【讨论】:
以上是关于请教SQL的一个问题~,如何在update时向某个列的值追加字符?的主要内容,如果未能解决你的问题,请参考以下文章
请教下, ASP更新数据UPDATE时 WHERE语句的用法是怎么样的 ?
请教如何mysql命令,把b字段值复制到a字段内容前面,谢谢