【问题标题】:How to select exploded column value in sql如何在sql中选择爆炸的列值
【发布时间】:2018-02-13 18:34:06
【问题描述】:

我知道,这可以使用 PHP 轻松完成,但只是好奇,

我如何在mail 字段上展开以从alias 列中选择值,其中第一个展开部分为@

当前:

+-------+-----------------------------------------+
| alias | mail                                    |
+-------+-----------------------------------------+
|       | user.one@gmail.com                      |
|       | user.two.foo@gmail.com                  |
+-------+-----------------------------------------+

期望:

+-------+------------------------------------------------+
| alias        | mail                                    |
+-------+------------------------------------------------+
| user.one     | user.one@gmail.com                      |
| user.two.foo | user.two.foo@gmail.com                  |
+-------+------------------------------------------------+

在伪代码中会是这样的

update tablename set tablename.alias = explode('@', tablename.mail)[0];

【问题讨论】:

    标签: mysql sql exploded


    【解决方案1】:

    在 MySQL 中,可以使用substring_index():

    update t
        set alias = substring_index(t.mail, '@', 1);
    

    【讨论】:

      猜你喜欢
      • 2015-08-23
      • 1970-01-01
      • 2021-02-25
      • 2021-11-15
      • 2022-01-16
      • 1970-01-01
      • 2014-01-14
      • 1970-01-01
      • 2016-05-18
      相关资源
      最近更新 更多