টেবিল তৈরি এবং ডেটা ইনসার্ট
mysql> create table DemoTable1861 ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Name varchar(20), Marks int ); Query OK, 0 rows affected (0.00 sec)
mysql> insert into DemoTable1861(Name,Marks) values('John',45); Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1861(Name,Marks) values('Chris',74); Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1861(Name,Marks) values('David',89); Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1861(Name,Marks) values('Chris',74); Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1861(Name,Marks) values('John',49); Query OK, 1 row affected (0.00 sec)
সব রেকর্ড
mysql> select * from DemoTable1861;
+----+-------+-------+ | Id | Name | Marks | +----+-------+-------+ | 1 | John | 45 | | 2 | Chris | 74 | | 3 | David | 89 | | 4 | Chris | 74 | | 5 | John | 49 | +----+-------+-------+ 5 rows in set (0.00 sec)
Name এবং Marks দুটি কলাম মিলে ডুপ্লিকেট সারি বের করা
সাবকুয়েরি দিয়ে (Name, Marks) জোড়ার কাউন্ট > ১ হলে সিলেক্ট করি:
mysql> select Id,Name,Marks from DemoTable1861 where (Name,Marks) IN ( select Name,Marks from DemoTable1861 group by Name,Marks having count(*) > 1);
+----+-------+-------+ | Id | Name | Marks | +----+-------+-------+ | 2 | Chris | 74 | | 4 | Chris | 74 | +----+-------+-------+ 2 rows in set (0.00 sec)
ব্যাখ্যা: ROW CONSTRUCTOR (Name, Marks) IN (...) সিনট্যাক্স MySQL-এ সমর্থিত। এটি একাধিক কলামের কম্বিনেশন ডুপ্লিকেট খুঁজে বের করার সুন্দর পদ্ধতি।