【发布时间】:2023-03-09 22:37:01
【问题描述】:
好吧,伙计们,这几天让我翻白眼了。假设我有两个表(或更多),如下所示。
表 1
ID | NAME | DATE | MORE COLS....
1 | MARK | 2018-31-10 | ....
2 | JOHN | 2018-29-10 | ....
...
表2
FK_TBL1_ID | Data1 | Data2 |
1 | 11111 | 33333 |
1 | 22222 | 44444 |
2 | 12345 | 67899 |
...
我想将每行的多个列与这些表的相同 id 组合成 A SINGLE ROW 和 SINGLE COLUMN,如下所示。每个新的“行”都将用';'与前一个分开。
查询结果
ID | NAME | DATE | Data1Data2 |
1 | MARK | 2018-31-10 | 1111 3333; 2222 4444; |
2 | JOHN | 2018-29-10 | 12345 67899 |
你会怎么做呢?我在 FOR XML PATH 上找到了示例,但仅当多行包含两列并在不同行上组合时。
【问题讨论】:
-
我已为您删除了冲突的标签。请不要在您的问题中标记不相关的 RDBMS,它实际上会使那些试图回答的人更加困惑,或者延迟您获得一个(因为志愿者不知道什么语法对您实际使用的 RDBMS 有效) .
标签: sql sql-server for-xml-path