SQL > Advanced SQL > Minus

The MINUS command operates on two SQL statements. It takes all the results from the first SQL statement, and then subtract out the ones that are present in the second SQL statement to get the final result set. If the second SQL statement includes results not present in the first SQL statement, such results are ignored.


The syntax for MINUS is as follows:

[SQL Statement 1]
[SQL Statement 2];

The columns selected in [SQL Statement 1] and [SQL Statement 2] need to be of the same data type for MINUS to work.


We use the following tables for our example.

Table Store_Information

 Store_Name  Sales  Txn_Date 
 Los Angeles 1500  Jan-05-1999 
 San Diego 250  Jan-07-1999 
 Los Angeles 300  Jan-08-1999 
 Boston 700  Jan-08-1999 

Table Internet_Sales

 Txn_Date  Sales 
 Jan-07-1999  250 
 Jan-10-1999  535 
 Jan-11-1999  320 
 Jan-12-1999  750 

To find all the dates where there are store sales but no internet sales, we use the following SQL statement:

SELECT Txn_Date FROM Store_Information
SELECT Txn_Date FROM Internet_Sales;



'Jan-05-1999', 'Jan-07-1999';, and 'Jan-08-1999' are the distinct values returned from SELECT Txn_Date FROM Store_Information. Out of the three dates, 'Jan-07-1999' is also returned from the second SQL statement, SELECT Txn_Date FROM Internet_Sales, so it is excluded from the final result set.

Please note that the MINUS command will only return distinct values.

Some databases may use EXCEPT instead of MINUS. Please check the documentation for your specific database for the correct usage.

Next: SQL Limit

This page was last updated on June 19, 2023.

Copyright © 2024   1keydata.com   All Rights Reserved     Privacy Policy     About   Contact