Mysql Minus

Mysql Minus is used to see only those records from table which are not in another table.

Mysql Minus

Mysql Minus

     

Mysql Minus is used to see only those records from table which are not in another table.

Understand with Example

The Tutorial supports you an elaborative example from 'Mysql Minus'. To understand and grasp this example we create a table 'employee1' with required fieldname and datatype respectively.

 Query to create table:

CREATE TABLE employee1( Empid int(10),Empname varchar(60),date date ); 

Query to insert data:

The Query insert into is used to add the records or rows to the table 'employee1'.

mysql> insert into employee1(Empid,Empname,date)values('01','Girish','2008-12-20');
Query OK, 1 row affected (0.02 sec)

mysql> insert into employee1(Empid,Empname,date)values('02','Komal','2008-12-21');
Query OK, 1 row affected (0.02 sec)

mysql> insert into employee1(Empid,Empname,date)values('03','vineet','2008-12-21');
Query OK, 1 row affected (0.03 sec)

mysql> insert into employee1(Empid,Empname,date)values('04','Amit','2008-12-20');
Query OK, 1 row affected (0.02 sec)

mysql> insert into employee1(Empid,Empname,date)values('02','Komal','2008-12-23');
Query OK, 1 row affected (0.02 sec)

mysql> insert into employee1(Empid,Empname,date)values('02','Sandeep','2008-12-24');
Query OK, 1 row affected (0.02 sec)

mysql> insert into employee1(Empid,Empname,date)values('02','suman','2008-12-25');
Query OK, 1 row affected (0.02 sec)

mysql> insert into employee1(Empid,Empname,date)values('01','AAA','2008-12-03');
Query OK, 1 row affected (0.02 sec)


Query to view data from the table created:

To view the records from table 'employee1' we use select query return you the records.

mysql> select * from employee1;
+-------+---------+------------+
| Empid | Name    | DOB        |
+-------+---------+------------+
| 1     | Girish  | 2008-12-20 |
| 2     | Komal   | 2008-12-21 |
| 3     | vineet  | 2008-12-21 |
| 4     | Amit    | 2008-12-20 |
| 2     | Komal   | 2008-12-23 |
| 2     | Sandeep | 2008-12-24 |
| 2     | suman   | 2008-12-25 |
| 1     | AAA     | 2008-12-03 |
+-------+---------+------------+
8 rows in set (0.00 sec)

Query to create another table named employee:

Now we create another table 'employee2' with required fieldname and datatype respectively.

mysql> CREATE TABLE employee2 (
    ->              Empid int(10),
    ->              name varchar(30),
    ->              date date
    ->            );
Query OK, 0 rows affected (0.06 sec)

Query to insert data:

The insert into is used to add the records or rows to the table 'employee2'.

mysql> insert into employee2 values('01','Girish','20081223');
Query OK, 1 row affected (0.03 sec)
mysql> insert into employee2 values('02','Komal','20081221');
Query OK, 1 row affected (0.03 sec)

Query to view data inserted in the table created:

To view the details from table 'employee2' we use select query.

mysql> SELECT * FROM employee2;
+-------+--------+------------+
| Empid | name   | date       |
+-------+--------+------------+
|     1 | Girish | 2008-12-23 |
|     2 | Komal  | 2008-12-21 |
+-------+--------+------------+
2 rows in set (0.00 sec)

Query to view data that are not in the table employee2:

The Query given below is used to view the records from employee1 that are not in the table employee2.

mysql> SELECT Name FROM employee1
    -> WHERE name NOT IN (SELECT name FROM employee2);

Output:-

+---------+
| Name    |
+---------+
| vineet  |
| Amit    |
| Sandeep |
| suman   |
| AAA     |
+---------+
5 rows in set (0.00 sec)