2015-03-25 71 views
0

我在做數據庫表結果比較

select count(*) from DATA_TABLE where jobid=1。它給了我10000條記錄。

select count(*) from DATA_TABLE where jobid=2。它給了我12500條記錄。

現在我想看看額外的2500條記錄。我該怎麼做 ?

注意:10000條記錄應該與我運行相同的邏輯相同。

+0

額外2500?但是您確定所有10000個作業1行都包含在12500作業2行中嗎? – jarlh 2015-03-25 10:43:26

+0

是............. – VJS 2015-03-25 10:50:03

+1

表中的單個行如何具有1和2的job_id? – 2015-03-25 11:52:36

回答

0

使用減號操作

select column_list from DATA_TABLE where jobid=2 
MINUS 
select column_list from DATA_TABLE where jobid=1 
+1

不,'SELECT *'也包含'jobid'列。因此,MINUS將返回表中jobid爲2的所有行。 – 2015-03-25 11:27:59

+0

即時更正,從我的答案中刪除* – 2015-03-26 04:38:36

3

做一個SELECT *無論如何都會給你的所有列,因此減號將考慮所有行是不同的,你將不得不在結果中的所有行。

您只能包含那些您想要改變的列。

例如,

SELECT column_list from DATA_TABLE where jobid=1 
MINUS 
SELECT column_list from DATA_TABLE where jobid=2 

確保column_list不包括jobid列。