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

MySQL-এ MOD (%) ব্যবহার করে একান্ত সারি (আল্টারনেট রো) আপডেট করা

প্রতিটি দ্বিতীয় সারি (ইভেন ID) আপডেট করতে WHERE Id % 2 = 0 শর্ত ব্যবহার করুন। প্রথমে একটি টেবিল তৈরি করি:

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

রেকর্ড যোগ করি (MongoDB বারবার এসেছে):

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

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

mysql> SELECT * FROM DemoTable;

আউটপুট:

+----+---------+
| Id | Subject |
+----+---------+
| 1  | C       |
| 2  | MongoDB |
| 3  | Java    |
| 4  | MongoDB |
| 5  | Python  |
| 6  | MongoDB |
+----+---------+

ইভেন ID (২, ৪, ৬) वाले সারিগুলোতে 'MongoDB' কে 'MySQL'-এ রিপ্লেস করা:

mysql> UPDATE DemoTable SET Subject = REPLACE(Subject, 'MongoDB', 'MySQL') WHERE Id % 2 = 0;
Query OK, 3 rows affected (0.17 sec)

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

mysql> SELECT * FROM DemoTable;

আউটপুট:

+----+---------+
| Id | Subject |
+----+---------+
| 1  | C       |
| 2  | MySQL   |
| 3  | Java    |
| 4  | MySQL   |
| 5  | Python  |
| 6  | MySQL   |
+----+---------+

ব্যাখ্যা:

  • Id % 2 = 0: ID ২ দিয়ে বিভাজ্য (ইভেন নম্বর) वाले সারি সিলেক্ট করে।
  • REPLACE(Subject, 'MongoDB', 'MySQL'): Subject-এ 'MongoDB' খুঁজে 'MySQL' দিয়ে রিপ্লেস করে।
  • শুধু ইভেন ID গুলো আপডেট হয়েছে, অড ID গুলো (১, ৩, ৫) অপরিবর্তিত থাকল।

ব্যবহার ক্ষেত্র: ব্যাচ প্রসেসিং, A/B টেস্টিং ডেটা তৈরি, পার্টিশনিং লজিক।

  1. MySQL-এ DELETE স্টেটমেন্ট ব্যবহার করে নির্দিষ্ট সারি মুছে ফেলা

  2. MySQL-এ একই কোয়েরিতে INSERT এবং UPDATE (ON DUPLICATE KEY UPDATE)

  3. MySQL-এ RIGHT() এবং NOT IN দিয়ে নির্দিষ্ট শেষ ৩ ডিজিটवाले মান বাদ দিয়ে বাকি দেখানো

  4. MySQL-এ LIKE ও CONCAT ব্যবহার করে একই রোয়ের দুটি কলামে সাবস্ট্রিং ম্যাচ করা