sql - SQL添加字符串结束值
问题描述
我有一个电子邮件列,每行都有不同数量的电子邮件。我想为每一行添加相同的电子邮件结尾。例如;
1.abc@hotmail.com;cd@hotmail.com
2.def@hotmail.com
3.a@hotmail.com;b@hotmail.com;d@hotmail.com
. . . 我想要的是;
1.abc@hotmail.com;cd@hotmail.com;newemail@hotmail.com
2.def@hotmail.com;newemail@hotmail.com
3.a@hotmail.com;b@hotmail.com;d@hotmail.com;newemail@hotmail.com
我该如何添加?
解决方案
您没有提供有关数据库(MySQL、SQL Server 等)的任何信息。我的解决方案适用于 SQL Server
update [tablename] set [column] = concat([column] + ';', 'newemail@hotmail.com')
为什么使用concat
和“+”?因为如果您的表中的记录列设置为null ,那么操作column + ';'
也会返回null。之后 concat null with string 给你那个字符串,这样你就可以避免在这种情况下在开头放置不必要的分号。如果行中的列在列中没有空值,则将在您的新电子邮件地址之前添加分号。column + ';'
推荐阅读
- javascript - 如何在javascript条件下添加样式
- python - 为 ffill 添加前缀,标识被结转的值
- microsoft-graph-api - 向 Microsoft 德国端点发送发布请求后出现“UnableToDeserializePostBody”错误
- url - grep 如何匹配目录 URL?
- java - Web 服务器无法启动。8080 端口已被使用
- php - 如何在超类中拥有实体的列?
- javascript - 打字稿只转译打字稿,但也转译类型检查 javascript
- css - 如何使 svg 路径悬停区域更大
- android - 使用手机加速度计/重力传感器矢量以圆形旋转项目
- angular - PrimeNG 表格列过滤器自定义 - 添加按钮并选择所有复选框