【问题标题】:MySQL Merging multiple rows with the same ID into one row [duplicate]MySQL将具有相同ID的多行合并为一行[重复]
【发布时间】:2017-10-19 07:57:30
【问题描述】:

我有一个表,其中的行具有多个相同的 ID 我想找出一个 SQL 查询,它允许我将相关的字段编号和值放入一个单独的列中;对于值 1.3,将创建一个名为 first 的新列,1.6 将是姓氏,依此类推。我想尝试将所有信息放入一行,因此对于lead_id 值为 79 的每个信息,只有一行而不是 9 行。我不确定这是否可能?我在下面放了一个数据库结构的预览,试图说明我的意思。

ID   lead_id   field_number   Value

1       79         1.3        John
2       79         1.6        Doe
3       79          2         johndoe@example.com
4       79          6         POSTCODE
5       79          3         01332 1234567
6       79          4         DATE OF BIRTH
7       79          7         APPLICATION ID
8       79          9         CITY NAME
9       79          5         RESUME URL
10      80         1.3        Jane
11      80         1.6        Doe
12      80          2         janedoe@example.com
13      80          6         POSTCODE
14      80          3         01332 1234567
15      80          4         DATE OF BIRTH
16      80          7         APPLICATION ID
17      80          9         CITY NAME
18      80          5         RESUME URL

任何帮助将不胜感激!

【问题讨论】:

    标签: mysql sql database rows


    【解决方案1】:

    您可以为此使用多个SELECT 查询,例如:

    SELECT t.lead_id,
     (SELECT value FROM table WHERE lead_id = t.lead_id AND field_number = 1.3) as 'first name',
     (SELECT value FROM table WHERE lead_id = t.lead_id AND field_number = 1.6) as 'last name',
     (SELECT value FROM table WHERE lead_id = t.lead_id AND field_number = 2) as 'email',
     (SELECT value FROM table WHERE lead_id = t.lead_id AND field_number = 6) as 'post code',
     (SELECT value FROM table WHERE lead_id = t.lead_id AND field_number = 3) as 'phone',
     (SELECT value FROM table WHERE lead_id = t.lead_id AND field_number = 4) as 'dob'
    FROM table t
    

    您可以为更多列添加更多SELECTs。

    【讨论】:

    • 谢谢我最终使用了 GROUP_CONCAT(IF(field_number = 2, VALUE, NULL)) AS 'Email',谢谢你的帮助
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-08
    • 2013-05-24
    • 2016-05-12
    • 1970-01-01
    • 1970-01-01
    • 2021-10-23
    相关资源
    最近更新 更多