একটি পরিসরে র্যান্ডম সংখ্যার জন্য, আপনাকে MySQL থেকে RAND() পদ্ধতি ব্যবহার করতে হবে। −
আপডেটের জন্য সিনট্যাক্স নিম্নরূপUPDATE yourTableName set yourColumnName=value where yourColumnName2=(SELECT FLOOR(1+RAND()*3));
উপরের ক্যোয়ারীতে, স্টেটমেন্ট FLOOR(1+RAND()*3) 1-3 এর মধ্যে সংখ্যা তৈরি করে এবং কলাম আপডেট করে।
উপরের সিনট্যাক্স বোঝার জন্য প্রথমে একটি টেবিল তৈরি করা যাক। একটি টেবিল তৈরি করার প্রশ্নটি নিম্নরূপ -
mysql> create table updateRowWith1To3 -> ( -> Id int, -> Name varchar(100) -> ); Query OK, 0 rows affected (0.47 sec)
সন্নিবেশ কমান্ড ব্যবহার করে টেবিলে কিছু রেকর্ড সন্নিবেশ করান। প্রশ্নটি নিম্নরূপ -
mysql> insert into updateRowWith1To3 values(1,'John'); Query OK, 1 row affected (0.24 sec) mysql> insert into updateRowWith1To3 values(2,'Sam'); Query OK, 1 row affected (0.14 sec) mysql> insert into updateRowWith1To3 values(3,'Carol'); Query OK, 1 row affected (0.14 sec) mysql> insert into updateRowWith1To3 values(4,'Mike'); Query OK, 1 row affected (0.16 sec) mysql> insert into updateRowWith1To3 values(5,'Bob'); Query OK, 1 row affected (0.10 sec) mysql> insert into updateRowWith1To3 values(6,'David'); Query OK, 1 row affected (0.17 sec)
সিলেক্ট স্টেটমেন্ট ব্যবহার করে টেবিল থেকে সমস্ত রেকর্ড প্রদর্শন করুন। প্রশ্নটি নিম্নরূপ -
mysql> select *from updateRowWith1To3;
আউটপুট
+------+-------+ | Id | Name | +------+-------+ | 1 | John | | 2 | Sam | | 3 | Carol | | 4 | Mike | | 5 | Bob | | 6 | David | +------+-------+ 6 rows in set (0.00 sec)
1-3 −
এর মধ্যে এলোমেলো সংখ্যা সহ কলামের নাম আপডেট করতে ব্যবহার করা যেতে পারে এমন প্রশ্নটি এখানে রয়েছেmysql> update updateRowWith1To3 set Name='Mary' where Id=(select floor( 1 + RAND( ) *3 )); Query OK, 1 row affected (0.15 sec) Rows matched: 1 Changed: 1 Warnings: 0
এখন আপনি টেবিল চেক করতে পারেন. 1-3-এর মধ্যে মেরির সাথে কলামের নাম আপডেট করা হত। টেবিল থেকে রেকর্ড চেক করার জন্য ক্যোয়ারী নিম্নরূপ -
mysql> select *from updateRowWith1To3;
আউটপুট
+------+-------+ | Id | Name | +------+-------+ | 1 | Mary | | 2 | Sam | | 3 | Carol | | 4 | Mike | | 5 | Bob | | 6 | David | +------+-------+ 6 rows in set (0.00 sec)