INFORMATION_SCHEMA থেকে র্যান্ডম টেবিল নাম বের করা
MySQL-এ INFORMATION_SCHEMA.TABLES টেবিল থেকে র্যান্ডমভাবে টেবিল নাম নির্বাচন করতে ORDER BY RAND() এবং LIMIT ব্যবহার করা হয়।
সিনট্যাক্স
SELECT TABLE_NAME AS alias_name
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'your_database_name'
ORDER BY RAND()
LIMIT your_limit_number;
উদাহরণ: ৪টি র্যান্ডম টেবিল বের করা
SELECT TABLE_NAME AS Random4TableName
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'web'
ORDER BY RAND()
LIMIT 4;
আউটপুট (নমুনা):
+------------------+
| Random4TableName |
+------------------+
| demotable474 |
| demotable313 |
| demotable452 |
| demotable382 |
+------------------+
পারফরম্যান্স সতর্কতা
ORDER BY RAND()বড় ডাটাসেটে ধীর হয় কারণ এটি সব রোয়ের জন্য র্যান্ডম মান জেনারেট করে এবং সর্ট করে।- হাজার হাজার টেবিল থাকলে এটি chấpচাপ্য হতে পারে।
- বিকল্প: অ্যাপ্লিকেশন লেভেলে র্যান্ডম আইডি জেনারেট করে
WHERE TABLE_NAME IN (...)ব্যবহার করা দ্রুত।
নোট: TABLE_SCHEMA ফিল্টার অবশ্যই দিন, অন্যথায় সিস্টেম ডাটাবেসও ফলাফলে আসবে।