我从表中有以下记录。我想在Oracle 9,10,11中使用SQL来完成我的任务。
1040 1040a 1040e tax_id
Y 111
Y 111
Y 4444
Y 4444
Y 4344
Y 4344
如何在Oracle中使用SQL来提取我想要的输出,如下所示:
1040 1040a 1040e tax_id
Y Y 111
Y Y 4444
Y Y 4344
我在Oracle 9 / 10g / 11g版本中运行SQL。
感谢您的帮助。 HT
答案 0 :(得分:2)
看起来简单的Group by
与Max
聚合应该做的伎俩
SELECT Max(1040),
Max(1040a),
Max(1040e),
tax_id
FROM yourtable
GROUP BY tax_id
答案 1 :(得分:0)
尝试:
SELECT tax_id, 1040, 1040a, 1040e
FROM
(
SELECT tax_id, 1040
FROM table
) A
FULL OUTER JOIN
(
SELECT tax_id, 1040a
FROM table
) B
ON A.tax_id=B.tax_id
FULL OUTER JOIN
(
SELECT tax_id, 1040e
FROM table
) C
ON A.tax_id=C.tax_id
/