Did you try it? It's fairly easy to test:
WITH
Source (COL) AS (
SELECT 10 FROM SYSIBM.SYSDUMMY1 UNION ALL
SELECT 20 FROM SYSIBM.SYSDUMMY1 UNION ALL
SELECT 30 FROM SYSIBM.SYSDUMMY1
)
,Target (COL) AS (
SELECT 10 FROM SYSIBM.SYSDUMMY1 UNION ALL
SELECT 40 FROM SYSIBM.SYSDUMMY1 UNION ALL
SELECT 30 FROM SYSIBM.SYSDUMMY1
)
SELECT COL FROM Source
MINUS
SELECT COL FROM Target
As you can see from the documentation:
EXCEPT or EXCEPT ALL
Derives a result table by combining two other result tables (R1 and R2). If EXCEPT ALL is specified, the result consists of all rows
that do not have a corresponding row in R2, where duplicate rows are
significant. If EXCEPT is specified without the ALL option, the result
consists of all rows that are only in R1, with duplicate rows in the
result of this operation eliminated.
For compatibility with other SQL implementations,
MINUS can be specified as a synonym for EXCEPT.
Therefore, EXCEPT
(or MINUS
) will only return the rows from the first table that do not have a match in the second table. In this case, you will get 20
back.