【发布时间】:2011-04-04 09:11:21
【问题描述】:
我有一个数据库表,数据如下:
Primary key | Column1 | Column2 | col3 | col4 |col5
---------------------------------------------------------------------
1 | Chicago Bulls | Michael Jordan | 6'6 | aaaa | cccc
2 | Chicago Bulls | Scottie Pippen | 6'8 | zzzz | 345
3 | Utah Jazz | Malone | 6'9 | vvvv | xcxc
4 | Orlando Magic | Hardaway | 6'7 | xnnn | sdsd
我想编写一个查询,它将获取 Column1 中的所有不同值并为每个 Column1 值附加 Column2 中的值。 例如:查询应该返回
**Chicago Bulls | Michael Jordan, Scottie Pippen**
**Utah Jazz | Malone**
**Orlando Magic | Hardaway**
我可以编写一个查询来获取 column1 中的所有不同值,然后在进行一些操作后遍历每个不同的值以获取附加的第 2 列。是否可以仅在一个查询中完成整个工作?请帮助提供查询示例。 谢谢。
【问题讨论】:
-
您使用的是什么 DMBS?
-
事实上,这里有一套相当全面的方法可以在不同的 RDBMS 中解决这个问题 - 可能与 How do I Create a Comma-Separated List using a SQL Query? 重复
-
您绝对应该在您的问题中提前说明这一点!看起来你需要to create a user defined aggregate。
-
@Martin:很抱歉没有包括在内。你能举个例子吗?我无法理解您提供的链接中的内容。谢谢。
-
@Fishina... 我没有 SQL derby 可玩。如果您能找到他们在该链接中讨论的
getMedianTestScore的代码并将其粘贴到您的问题中,我会看一下。