บางครั้ง เราจำเป็นต้องระบุข้อมูลที่ไม่ตรงกันจากสองตาราง โดยเฉพาะอย่างยิ่งในกรณีที่มีการย้ายข้อมูล สามารถทำได้โดยการเปรียบเทียบตาราง พิจารณาตัวอย่างด้านล่างซึ่งเรามีตารางสองตารางชื่อ 'students' และ 'student1'
mysql> Select * from students; +--------+--------+----------+ | RollNo | Name | Subject | +--------+--------+----------+ | 100 | Gaurav | Computer | | 101 | Raman | History | | 102 | Somil | Computer | +--------+--------+----------+ 3 rows in set (0.00 sec) mysql> select * from student1; +--------+--------+----------+ | RollNo | Name | Subject | +--------+--------+----------+ | 100 | Gaurav | Computer | | 101 | Raman | History | | 102 | Somil | Computer | | 103 | Rahul | DBMS | | 104 | Aarav | History | +--------+--------+----------+ 5 rows in set (0.00 sec)
ด้วยความช่วยเหลือของแบบสอบถามด้านล่าง เราสามารถเปรียบเทียบตารางเหล่านี้และรับแถวที่ไม่ตรงกันเป็นชุดผลลัพธ์
mysql> Select RollNo,Name,Subject from(select RollNo,Name,Subject from students union all select RollNo,Name,Subject from Student1)as std GROUP BY RollNo,Name,Subject HAVING Count(*) = 1 ORDER BY RollNo; +--------+-------+---------+ | RollNo | Name | Subject | +--------+-------+---------+ | 103 | Rahul | DBMS | | 104 | Aarav | History | +--------+-------+---------+ 1 rows in set (0.02 sec)