代码之家  ›  专栏  ›  技术社区  ›  GQS

如何在mysql中分离列内容?

  •  0
  • GQS  · 技术社区  · 2 年前

    我有一个mysql表:

    QA_CONTACT_NAME
    'ARAJKONWAR'
    'BOONKUAN/CHEECHENG'
    'CHEECHENGLAM/KFC'
    

    我想做的是创建另一个列来分隔带“/”的列,就像这样,左列重复:

    QA_CONTACT_NAME, QA_EMAIL
    'ARAJKONWAR', 'ARAJKONWAR'
    'BOONKUAN/CHEECHENG','BOONKUAN'
    'BOONKUAN/CHEECHENG','CHEECHENG'
    'CHEECHENGLAM/KFC','CHEECHENGLAM'
    'CHEECHENGLAM/KFC','KFC'
    

    谢谢您的帮助!

    mysql查询以获取第一个表:

    SELECT DISTINCT(QA_CONTACT_NAME) FROM table1;
    
    1 回复  |  直到 2 年前
        1
  •  0
  •   ysth    2 年前

    要生成额外的行,您需要连接以说明您应该看左边还是右边:

    select
        QA_CONTACT_NAME,
        substring_index(QA_CONTACT_NAME,'/',if(left_side,1,-1)) QA_EMAIL
    from (select 1 left_side union all select 0) left_or_right
    join yourtablename on instr(QA_CONTACT_NAME,'/') or left_side
    

    fiddle