在Oracle數據庫中,如果你想要對兩個表進行并集操作并去除重復的數據,你可以使用UNION
或UNION ALL
關鍵字。這兩個關鍵字的主要區別在于如何處理重復的行。
UNION
:這個關鍵字會自動去除重復的行,只返回唯一的記錄。UNION ALL
:這個關鍵字會返回所有的記錄,包括重復的行。以下是一個使用UNION
的示例:
SELECT column_name(s)
FROM table1
WHERE condition
UNION
SELECT column_name(s)
FROM table2
WHERE condition;
在這個示例中,我們從table1
和table2
中選擇滿足特定條件的行,并使用UNION
將它們合并為一個結果集。由于使用了UNION
,所以重復的行會被自動去除。
如果你確定兩個表中的數據不會有重復,或者你想要包含所有的記錄(包括重復的),你可以使用UNION ALL
:
SELECT column_name(s)
FROM table1
WHERE condition
UNION ALL
SELECT column_name(s)
FROM table2
WHERE condition;
請注意,使用UNION ALL
可能會導致結果集更大,因為它包含了所有的記錄,而不僅僅是唯一的記錄。