【问题标题】:splitting strings in sql在sql中拆分字符串
【发布时间】:2021-08-26 03:45:32
【问题描述】:

我有一个包含 2 列的表格,一列用于 id,一列用于国家/地区。

我在表格中找到了一些如下所示的行:

ID Country
1 US and Canada
2 France and UK

如何编写查询以便找到行并拆分列 我得到以下结果。

ID Country
1 US
1 Canada
2 France
2 UK

【问题讨论】:

标签: mysql sql


【解决方案1】:
    SELECT id, SUBSTRING_INDEX(name, ' and ', 1) as country
        FROM 
           (      SELECT 1 AS id, 'US and CN' AS name 
            UNION SELECT 2 AS id, 'JP and KR' AS name
           ) as string_test_tbl
        UNION 
    SELECT id, SUBSTRING_INDEX(name, ' and ', -1) as country
        FROM 
           (      SELECT 1 AS id, 'US and CN' AS name 
            UNION SELECT 2 AS id, 'JP and KR' AS name
           ) as string_test_tbl
        ;

【讨论】:

    【解决方案2】:

    您是否连续拥有多个and? – sddk

    我只有一个 - jean10

    SELECT id, SUBSTRING_INDEX(Country, ' and ', 1) Country
    FROM tablename
    UNION 
    SELECT id, SUBSTRING_INDEX(Country, ' and ', -1)
    FROM tablename
    ORDER BY 1
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-01-06
      • 2014-02-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多