以下是表格的结构
column A, column B, column C
value A, Value B, Value C1
value A, Value B, Value C2
Value A2, Value B2, Value C3
现在,我希望将结果视为 结果
column A, column B, column C
value A, Value B, Value C1
, , Value C2
Value A2, Value B2, Value C3
因此,如果A列和B列的值相同且C列的值不同那么,如果A和B的多个值相同但C不同,我如何取出上述示例的结果
答案 0 :(得分:0)
您应该根据您的问题仔细提供标签。 你已经给了mysql以及oracle 11g和oracle10g。
好的..这个查询在oracle中非常简单,后面的查询在Oracle数据库中进行了测试。
您可以使用ROW_NUMBER()
功能,如下所示 -
SELECT CASE
WHEN Rn_Cnt = 1 THEN
Columna
ELSE
NULL
END Columna,
CASE
WHEN Rn_Cnt = 1 THEN
Columnb
ELSE
NULL
END Columnb,
Columnc
FROM (SELECT Row_Number() Over(PARTITION BY Columna, Columnb ORDER BY Columnc) Rn_Cnt,
Columna,
Columnb,
Columnc
FROM Table_Name)