【问题标题】:Create new records from a field with comma delimited values从具有逗号分隔值的字段创建新记录
【发布时间】:2018-04-03 06:25:45
【问题描述】:

我想要更新一个创建不佳的表。设置为

  • 身份证
  • 姓名
  • 价值

因为一个给定的 Name 现在可以有多个值,所以 Value 字段是 varchar 并填充了逗号分隔的值:

  • 12,15,92

我想创建一个更新或创建表查询,将它们变成单独的记录,以便与

  • ID |姓名 |价值
  • 1 |鲍勃 | 5,6,9
  • 2 |爱丽丝| 5,9
  • 3 |特德 | 1

结果

  • 1 |鲍勃 | 5
  • 2 |鲍勃 | 6
  • 3 |鲍勃 | 9
  • 4 |爱丽丝 | 5
  • 5 |爱丽丝 | 9
  • 6 |特德 | 1

【问题讨论】:

  • 很好。祝你好运。你有问题吗?
  • @MarcB 不,回去睡觉
  • @user364973 新建另一个表,然后使用php(或其他语言,你知道的),循环执行旧表中的数据,使用explode()函数并检索结果,插入在新表中。或类似的东西......
  • 您好,谢谢,我找到了一个用于此目的的拆分器功能:kedar.nitty-witty.com/blog/…

标签: mysql


【解决方案1】:

在网上搜索时,这似乎是一个很常见的问题,我在这里找到了将分隔字段拆分为记录的几个函数之一:

http://kedar.nitty-witty.com/blog/mysql-stored-procedure-split-delimited-string-into-rows

【讨论】:

    【解决方案2】:

    这是一个老问题,但是有一个mysql函数可以解决这个问题,它的名字是group_concatyou can see the function in the offical documentationalso you can see an example here

    【讨论】:

      猜你喜欢
      • 2019-02-27
      • 2018-10-11
      • 2018-01-10
      • 1970-01-01
      • 2012-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多