2014-04-10 40 views
-1

我已经使用5个表创建了一个视图。输出数据来自几乎所有表格,大约有10列。的输出是这样的:将结果行合并到一个oracle中

EmployeeName Addr Dept 
___________________________ 

Vishal   Pune Finance 
Vishal   Pune null 
Ahmed   Bombay Admin 
Ahmed   Bombay Null 

我需要作为输出:

EmployeeName Addr Dept 
___________________________ 

Vishal   Pune Finance 
Ahmed   Bombay Admin 

在上面的例子中,考虑示出的列被从不同的表来。请建议一些解决方案

+0

'按组名'并使用MAX(Addr)和MAX(Dept) –

回答

0

只需检查下面是否是你想要的?

WITH TAB1 AS 
(SELECT 'Vishal' ENAME, 'Pune' ADDR, 'Finance' DEPT FROM DUAL 
    UNION 
    SELECT 'Vishal' ENAME, 'Pune' ADDR, NULL DEPT FROM DUAL 
    UNION 
    SELECT 'Ahmed' ENAME, 'Bombay' ADDR, 'Admin' DEPT FROM DUAL 
    UNION 
    SELECT 'Ahmed' ENAME, 'Bombay' ADDR, NULL DEPT FROM DUAL 
) SELECT * FROM TAB1 WHERE DEPT IS NOT NULL; 
相关问题