Mysql Exists return you only matches records of table 1 with table2. The unmatchable records are not displayed in the output of the table.
Understand with Example
The Tutorial illustrate an example that create a table 'MyTable' with required fieldnames and datatypes respectively.
Create Table MyTable:
mysql> CREATE TABLE MyTable (
-> Empid int(10),
-> Empname varchar(60)
-> Salary int(90)
-> );
Query OK, 0 rows affected (0.13 sec)
|
Insert Values into MyTable:
The insert into is used to add the records value to the table 'MyTable'.
mysql> insert into MyTable values(01,'Girish','20000'); Query OK, 1 row affected (0.02 sec) mysql> insert into MyTable values(10,'Komal','20000'); Query OK, 1 row affected (0.01 sec) mysql> insert into MyTable values(02,'A','21000'); Query OK, 1 row affected (0.01 sec) mysql> insert into MyTable values(03,'C','22000'); Query OK, 1 row affected (0.00 sec) mysql> insert into MyTable values(04,'V','23000'); Query OK, 1 row affected (0.00 sec) mysql> insert into MyTable values(05,'B','24000'); Query OK, 1 row affected (0.00 sec) mysql> insert into MyTable values(06,'E','25000'); Query OK, 1 row affected (0.00 sec) mysql> insert into MyTable values(07,'Q','26000'); Query OK, 1 row affected (0.01 sec) mysql> insert into MyTable values(08,'W','27000'); Query OK, 1 row affected (0.01 sec) mysql> insert into MyTable values(09,'AS','28000'); Query OK, 1 row affected (0.00 sec)` |
Create Table employee:
Now we create another table 'Employee' whose fieldnames and datatypes are specified.
mysql> CREATE TABLE Employee(
-> Empid int(10),
-> Empname varchar(60),
-> Salary int(90),
-> DOB date
-> );
Query OK, 0 rows affected (0.01 sec)
|
Insert Values into Employee:
mysql> INSERT INTO Employee (Empid,Empname,Salary,DOB) VALUES
-> (01,'Habib',2014,20041202),
-> (02,'Karan',4021,20030411),
-> (03,'Samia', 22,20080223),
-> (04,'Hui Ling', 25,20081015),
-> (05,'Yumie', 29,19990126);
Query OK, 5 rows affected (0.00 sec)
Records: 5 Duplicates: 0 Warnings: 0
|
Query for Exists
The output table shows only those empid that matches from table 'mytable' with employee. The unmatchable records id are not displayed.
mysql> select empid from mytable where EXISTS (select empid from employee); +-------+ | empid | +-------+ | 1 | | 2 | | 3 | | 4 | | 5 | | 6 | | 7 | | 9 | +-------+ 8 rows in set (0.00 sec)
If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.
Ask your questions, our development team will try to give answers to your questions.
Ask Questions? Discuss: Mysql Exists
Post your Comment