কম্পিউটার টিউটোরিয়াল

MySQL-এ নির্দিষ্ট একটি সারি বাদ দিয়ে বাকি সব সারি ডিলিট করা

নির্দিষ্ট একটি সারি রেখে বাকি সব ডিলিট করতে != (নট ইকুয়াল) অপারেটর ব্যবহার করুন। সিনট্যাক্স:

DELETE FROM yourTableName WHERE yourColumnName != 'yourValue';

প্রথমে একটি টেবিল তৈরি করি:

mysql> CREATE TABLE DemoTable (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    Subject VARCHAR(100)
);

রেকর্ড যোগ করি:

mysql> INSERT INTO DemoTable(Subject) VALUES('MySQL'), ('MongoDB'), ('Java');

সকল রেকর্ড দেখতে:

mysql> SELECT * FROM DemoTable;

আউটপুট:

+----+---------+
| Id | Subject |
+----+---------+
| 1  | MySQL   |
| 2  | MongoDB |
| 3  | Java    |
+----+---------+

'MongoDB' ছাড়া বাকি সব ডিলিট করা:

mysql> DELETE FROM DemoTable WHERE Subject != 'MongoDB';
Query OK, 2 rows affected (0.19 sec)

আপডেট হওয়া টেবিল চেক করুন:

mysql> SELECT * FROM DemoTable;

আউটপুট:

+----+---------+
| Id | Subject |
+----+---------+
| 2  | MongoDB |
+----+---------+

ব্যাখ্যা: WHERE Subject != 'MongoDB' শর্তটি 'MongoDB' নয় এমন সকল সারি সিলেক্ট করে এবং ডিলিট করে।

সতর্কতা:

  • NULL ভ্যালু वाले সারি != 'MongoDB' থেকে বাদ পড়ে যায় (NULL != 'MongoDB' হলো UNKNOWN, TRUE নয়)। NULL ও ডিলিট করতে চাইলে WHERE Subject != 'MongoDB' OR Subject IS NULL ব্যবহার করুন।
  • প্রোডাকশনে ডিলিট করার আগে SELECT * FROM DemoTable WHERE Subject != 'MongoDB' চালিয়ে নিশ্চিত হন।
  1. MySQL-এ নির্দিষ্ট সারি মাত্র ডিলিট করার পদ্ধতি (NOT IN ব্যবহার)

  2. MySQL-এ SELECT ... INTO @variable ব্যবহার করে নির্দিষ্ট রো থেকে একক মান বের করা

  3. MySQL-এ নির্দিষ্ট শর্ত অনুযায়ী সিঙ্গেল রো বের করা

  4. MySQL-এ DISTINCT ব্যবহার করে ডুপ্লিকেট রো থেকে শুধু একটি রো দেখানো