举杯邀月

mysql 截取一个字段的某一段,更新到另一个字段中

摘要:我们经常需要执行mysql,将某一个字段的值更新到另一个字段中,但是往往需求比现实变态,工作需要,所以整理下mysql 利用 substring_index方法 截取一个字段的某一段,更新到另一个字段中

我们经常需要执行mysql,将某一个字段的值更新到另一个字段中,但是往往需求比现实变态,今天遇到一个需求,截取一个字段中的某一部分,更新到另一个字段中,表结果大致为:

其中,email是邮箱,新增type字段要截取邮箱的后缀,

id email type
1 1762910894@qq.com
2 1762910894@qq.com
3 h1762910894@gmail.com
4 h1762910894@163.com

查阅资料后,决定使用发现了一个截取的函数:substring_index

SELECT substring_index(email, '@', -1) as type, id FROM `user_email`;
1
1
1

执行结果为:

id type
1 qq.com
2 qq.com
3 gmail.com
4 163.com

然后写了更新语句:

update `user_email` set type = substring_index(email, '@', -1)
1
1
1

执行结果:

id email type
1 1762910894@qq.com qq.com
2 1762910894@qq.com qq.com
3 h1762910894@gmail.com gmail.com
4 h1762910894@163.com 163.com

作者:举杯邀月

出处: http://www.hug-code.cn/archives/5fc7054a82b47.html

2020-05-31 标签: mysql