【发布时间】:2014-01-17 15:38:48
【问题描述】:
我很难说出我想要达到的目标。我有一个看起来像这样的表:
user char
---------
a | x
a | y
a | z
b | x
b | x
b | y
c | y
c | y
c | z
如何编写一个返回以下结果的查询?
user x y z
-------
a |1|1|1|
b |2|1|0|
c |0|2|1|
数字表示原始表中字符的出现次数
编辑: 字符值是未知的,因此解决方案不能仅限于这些值。抱歉没有早点提。我正在使用 Oracle DB,但计划使用 JPQL 来构建查询。
【问题讨论】:
-
你用的是什么数据库? sql服务器? mysql?
-
这是用于什么数据库平台的?
-
可能的
char值是否仅限于x、y和z,或者它们可以是任何字符? -
很抱歉没有早点提到这个,char 值是未知的,因此它可以是任何字符。在 Vland 和 OldProgrammer,我正在使用 oracle DB,并将使用 JPQL 来构建查询
-
不使用 XML,不确定您是否可以使用一组未知值进行 PIVOT(假设您正在寻找仅 SQL 的解决方案)