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

MySQL-এ UPDATE, SET এবং LIMIT ব্যবহার করে আংশিক রো আপডেট করা

MySQL-এ UPDATE স্টেটমেন্টে LIMIT ক্লজ ব্যবহার করে নির্দিষ্ট সংখ্যক রো আপডেট করা যায়। এটি বড় টেবিলে ব্যাচ আপডেট বা নির্দিষ্ট সংখ্যক রো পরিবর্তনের জন্য উপকারী।

টেবিল তৈরি এবং ডেটা ইনসার্ট

mysql> CREATE TABLE DemoTable (
    -> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> Name VARCHAR(20)
    -> );
Query OK, 0 rows affected (0.69 sec)
mysql> INSERT INTO DemoTable(Name) VALUES('Carol');
mysql> INSERT INTO DemoTable(Name) VALUES('Chris');
mysql> INSERT INTO DemoTable(Name) VALUES('David');
mysql> INSERT INTO DemoTable(Name) VALUES('Bob');
mysql> INSERT INTO DemoTable(Name) VALUES('Mike');
mysql> INSERT INTO DemoTable(Name) VALUES('Sam');
mysql> INSERT INTO DemoTable(Name) VALUES('Robert');
mysql> INSERT INTO DemoTable(Name) VALUES('Adam');

সব রেকর্ড দেখানো

mysql> SELECT * FROM DemoTable;

আউটপুট

+----+--------+
| Id | Name   |
+----+--------+
| 1  | Carol  |
| 2  | Chris  |
| 3  | David  |
| 4  | Bob    |
| 5  | Mike   |
| 6  | Sam    |
| 7  | Robert |
| 8  | Adam   |
+----+--------+
8 rows in set (0.00 sec)

প্রথম ৭টি রো 'John' দিয়ে আপডেট (LIMIT 7)

mysql> UPDATE DemoTable
    -> SET Name = 'John'
    -> LIMIT 7;
Query OK, 7 rows affected (0.20 sec)
Rows matched: 7 Changed: 7 Warnings: 0

আপডেটের পর রেকর্ডগুলো

mysql> SELECT * FROM DemoTable;

আউটপুট

+----+------+
| Id | Name |
+----+------+
| 1  | John |
| 2  | John |
| 3  | John |
| 4  | John |
| 5  | John |
| 6  | John |
| 7  | John |
| 8  | Adam |
+----+------+
8 rows in set (0.00 sec)

ব্যাখ্যা: LIMIT 7 আপডেট হওয়া রোর সংখ্যা ৭টি তে সীমাবদ্ধ করে। MySQL ডিফল্টভাবে টেবিলের প্রাকৃতিক ক্রমে (সাধারণত PK ক্রমে) প্রথম ৭টি রো আপডেট করে।

সতর্কতা: ORDER BY ছাড়া LIMIT ব্যবহার করলে কোনো রো আপডেট হবে তা নিশ্চিত নয় (স্টোরেজ ইঞ্জিন ও ইনডেক্সের ওপর নির্ভর করে)। নিশ্চিত করতে: UPDATE DemoTable SET Name = 'John' WHERE Id <= 7; বা ORDER BY Id LIMIT 7 (MySQL 8.0+ এ ORDER BY LIMIT সাপোর্ট করে)।

  1. MySQL-এ ফ্লোট ভ্যালু রাউন্ড করে নতুন কলামে ফলাফল প্রদর্শন করা

  2. MySQL-এ TRIM() ব্যবহার করে ট্রেইলিং আন্ডারস্কোর (_) মুছে ফেলা

  3. MySQL에서 GROUP_CONCAT과 CONCAT, DISTINCT로 컬럼 값 따옴표로 감싸기

  4. MySQL-এ নির্দিষ্ট মান 'None' কে 'N/A' দিয়ে আপডেট করা