MINUS
Description
The MINUS operator in SQL is used to return all rows from the first SELECT statement that are not present in the second SELECT statement. It is effectively the same as the EXCEPT operator and is commonly used in Oracle databases.
Eliminates Duplicates: The
MINUSoperator automatically removes duplicate rows from the result set.Column Match: The number of columns and the data types of the columns in the
SELECTstatements must match.Order of Queries Matters: The order of the
SELECTstatements determines which rows are subtracted from which.
Syntax
SELECT column1, column2, ...
FROM table1
MINUS
SELECT column1, column2, ...
FROM table2;Example
Consider two tables, employees and managers, with the following data:
employees table:
1
Alice
101
2
Bob
102
3
Charlie
103
4
Dave
104
managers table:
2
Bob
102
3
Charlie
103
5
Eve
105
To find employees who are not managers, you can use the MINUS operator as follows:
SELECT name, dept_id
FROM employees
MINUS
SELECT name, dept_id
FROM managers;Result
Alice
101
Dave
104
In this example, the MINUS clause returns the rows where the name and dept_id are present in the employees table but not in the managers table.
Last updated