MySQL-এ একটি রোয়ের মধ্যে দুটি কলামের মান আদলবদল (সোয়াপ) করার জন্য ইউজার-ডিফাইনড ভেরিয়েবল (@variable) ব্যবহার করা হয়।
টেবিল তৈরি ও ডেটা ইনসার্ট
mysql> CREATE TABLE DemoTable (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
Number1 INT, Number2 INT
);
mysql> INSERT INTO DemoTable (Number1, Number2) VALUES (10,30), (60,50), (110,100);
Id=2 রোয়ের Number1 এবং Number2 সোয়াপ
mysql> UPDATE DemoTable
SET Number1 = (@tmp := Number1),
Number1 = Number2,
Number2 = @tmp
WHERE Id = 2;
ফলাফল:
+----+---------+---------+ | Id | Number1 | Number2 | +----+---------+---------+ | 1 | 10 | 30 | | 2 | 50 | 60 | | 3 | 110 | 100 | +----+---------+---------+
ব্যাখ্যা: @tmp := Number1 প্রথমে পুরনো Number1 ভ্যালু ভেরিয়েবলে সংরক্ষণ করে, তারপর Number1 = Number2 দিয়ে নতুন মান সেট করে, এবং শেষে Number2 = @tmp দিয়ে পুরনো মান ফেরত দেয়।