根据类型将联系人详细信息分组到 SQL 中的单独列中

帕普

我在一个联系人栏中有多个电话号码、多个电子邮件地址、多个传真地址。我需要一个查询来获得如下结果

Contact Id |Phone                 |Email                       |Fax
1          |Phone1, Phone2, Phone3|Email1, Email2,Email3,Email4|Fax1, Fax2
2          |Phone1, Phone2        |Email1, Email2,Email3       |Fax1, Fax2

我的输入就像

Value    MeansOfCommunicationDescription    ContactId
[email protected]    Email    2
www.1_port2.com    Web Site    2
Test Insert    Fax    2
Test Insert    Web Site    2
Test Insert    Web Site    2
Test Insert    Web Site    2
Test Insert    Web Site    2
Test Insert    Web Site    2
Test Insert    Web Site    2
test     Phone    2
test     Phone    2
test     Phone    2
Test Insert    Web Site    2
Test Insert    Email    2
布奇曼

您可以使用CTE来获得您想要的结果。您可以尝试以下查询:

;WITH ctePhone
    AS (
        SELECT DISTINCT ContactId           [ID],
        STUFF(( SELECT N', ' + Phone
            FROM Table1 B
             WHERE B.ContactId = A.ContactId
                FOR XML PATH(''), TYPE
                    ).value('(.)', 'NVARCHAR(MAX)'), 1, 1, '') [Phone],
        STUFF(( SELECT N', ' + Email
            FROM Table1 B
             WHERE B.ContactId = A.ContactId
                FOR XML PATH(''), TYPE
                    ).value('(.)', 'NVARCHAR(MAX)'), 1, 1, '') [Email],
        STUFF(( SELECT N', ' + Fax
            FROM Table1 B
             WHERE B.ContactId = A.ContactId
                FOR XML PATH(''), TYPE
                    ).value('(.)', 'NVARCHAR(MAX)'), 1, 1, '') [Fax]
            FROM Table1 A
    )
SELECT DISTINCT #Table1.ContactId,
    ctePhone.Phone,
    ctePhone.Email,
    ctePhone.Fax
FROM Table1
    INNER JOIN ctePhone
        ON Table1.ContactId = ctePhone.[ID]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从android中的联系人获取地址详细信息

来自分类Dev

从联系人列表中填充用户详细信息

来自分类Dev

如何在android中启动目录联系人的联系人详细信息活动

来自分类Dev

使用Swift在iOS中访问联系人详细信息

来自分类Dev

如何获取联系人详细信息中的电子邮件地址

来自分类Dev

在ios(通讯簿)中禁用联系人详细信息视图

来自分类Dev

使用列表框中的联系人详细信息更新文本框

来自分类Dev

如何将2个表中的SQL列相乘并插入单独的列中?

来自分类Dev

单独列中的SQL Union

来自分类Dev

从Android手机的联系人列表中检索指定号码的组织详细信息和电子邮件详细信息?

来自分类Dev

如何将单独列中冒号前后的单词拆分为sql中的行

来自分类Dev

根据单独的表sql的另一列在列中添加值

来自分类Dev

SQL - 将一列中的值拆分为两个单独的列

来自分类Dev

将单个表的多个SQL查询合并到单独的列中

来自分类Dev

单独将多个sql查询的结果合并到多个列中

来自分类Dev

如何在SQL Server中按字符将字符串拆分为单独的列

来自分类Dev

从 SQL 表中的联系人列表中查找匹配的联系人

来自分类Dev

从输出分组到熊猫中的单独列

来自分类Dev

使用SQL Server将联系人转换为Web表单中的客户端

来自分类Dev

SQL Server:如何解析一个列的值并插入到单独的表的多个列中?

来自分类Dev

根据所选选项的数量将表单的详细信息插入到MySQL表中

来自分类Dev

SQL查询可根据条件从1列中仅获取少量记录,并使用Select查询单独显示/显示它

来自分类Dev

将分组结果统计到熊猫的单独列中

来自分类Dev

SQL-Oracle-将具有多个“客户名称”值的重复ID放在单独的列中

来自分类Dev

将每个员工的员工详细信息作为JSON数组返回给SQL Server中的每个员工

来自分类Dev

在SQL的单独的列中显示重复的列并增加计数

来自分类Dev

将文件中的列读入单独的变量

来自分类Dev

在T-SQL中复制行详细信息

来自分类Dev

如何在SQL Server中输入票证的详细信息?

Related 相关文章

  1. 1

    从android中的联系人获取地址详细信息

  2. 2

    从联系人列表中填充用户详细信息

  3. 3

    如何在android中启动目录联系人的联系人详细信息活动

  4. 4

    使用Swift在iOS中访问联系人详细信息

  5. 5

    如何获取联系人详细信息中的电子邮件地址

  6. 6

    在ios(通讯簿)中禁用联系人详细信息视图

  7. 7

    使用列表框中的联系人详细信息更新文本框

  8. 8

    如何将2个表中的SQL列相乘并插入单独的列中?

  9. 9

    单独列中的SQL Union

  10. 10

    从Android手机的联系人列表中检索指定号码的组织详细信息和电子邮件详细信息?

  11. 11

    如何将单独列中冒号前后的单词拆分为sql中的行

  12. 12

    根据单独的表sql的另一列在列中添加值

  13. 13

    SQL - 将一列中的值拆分为两个单独的列

  14. 14

    将单个表的多个SQL查询合并到单独的列中

  15. 15

    单独将多个sql查询的结果合并到多个列中

  16. 16

    如何在SQL Server中按字符将字符串拆分为单独的列

  17. 17

    从 SQL 表中的联系人列表中查找匹配的联系人

  18. 18

    从输出分组到熊猫中的单独列

  19. 19

    使用SQL Server将联系人转换为Web表单中的客户端

  20. 20

    SQL Server:如何解析一个列的值并插入到单独的表的多个列中?

  21. 21

    根据所选选项的数量将表单的详细信息插入到MySQL表中

  22. 22

    SQL查询可根据条件从1列中仅获取少量记录,并使用Select查询单独显示/显示它

  23. 23

    将分组结果统计到熊猫的单独列中

  24. 24

    SQL-Oracle-将具有多个“客户名称”值的重复ID放在单独的列中

  25. 25

    将每个员工的员工详细信息作为JSON数组返回给SQL Server中的每个员工

  26. 26

    在SQL的单独的列中显示重复的列并增加计数

  27. 27

    将文件中的列读入单独的变量

  28. 28

    在T-SQL中复制行详细信息

  29. 29

    如何在SQL Server中输入票证的详细信息?

热门标签

归档