2011-04-21 67 views
0

我有两个具有相同列的表。一个表房子导入的数据,另一台房屋数据具体到我的应用程序:Oracle跨两个表计数

IMPORT_TABLE  MY_TABLE 
COL1 COL2  COL1 COL2 
"A" "1"  "A" "2" 
"B" "1"  "B" "1" 

我需要做的是编写一个查询,将告诉我,在COL1给定值,我有不同的价值观COL2横跨桌子。所以,当我运行这个查询时,我会为COL1取回值“A”。这告诉我需要在MY_TABLE中插入“A”“1”。

我该如何完成查询?我知道如何在单个表上执行Group By,但不能跨表执行。

+0

不清楚你想要什么。您的文本与您的数据示例不符。 – Randy 2011-04-21 16:10:27

回答

2

如果你只是想在MY_TABLE

SELECT col1, col2 
    FROM import_table 
MINUS 
SELECT col1, col2 
    FROM my_table 

IMPORT_TABLE不存在行如果COL1是独一无二的,你也可以做

SELECT import.col1, import.col2 imported_col2, mytbl.col2 my_col2 
    FROM import_table import 
     FULL OUTER JOIN my_table mytbl ON (mytbl.col1 = import.col1) 
+0

@Justin ....太棒了。 MINUS像一个魅力。谢谢 – MikeTWebb 2011-04-21 16:56:56