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

MySQL-এ information_schema.tables দিয়ে সব টেবিলের নাম এক লাইনে দেখানো (GROUP_CONCAT)


GROUP_CONCAT দিয়ে ডাটাবেসের সব টেবিল নাম একসাথে দেখানো

MySQL-এ information_schema.tables সিস্টেম ভিউ থেকে নির্দিষ্ট ডাটাবেসের সব টেবিলের নাম বের করে GROUP_CONCAT() দিয়ে কমা-সেপারেটেড একটি স্ট্রিংয়ে দেখানো যায়।

কোয়েরি (web ডাটাবেসের জন্য)

mysql> SELECT GROUP_CONCAT(table_name) 
FROM information_schema.tables 
WHERE table_schema = 'web';

ফলাফল (অংশিক)

+----------------------------------------------------------------------------------------------------------------------------------+
| GROUP_CONCAT(table_name)                                                                                                         |
+----------------------------------------------------------------------------------------------------------------------------------+
| demo_table725,demotabe619,demotabe620,demotable211,demotable212,... (খুব লম্বা তালিকা)                                           |
+----------------------------------------------------------------------------------------------------------------------------------+

ব্যাখ্যা

  • table_schema = 'web' — শুধু 'web' ডাটাবেসের টেবিল।
  • GROUP_CONCAT(table_name) — সব টেবিল নাম কমা দিয়ে এক লাইনে জোড়া দেয়।
  • ডিফল্টে GROUP_CONCAT ম্যাক্স ১০২৪ ক্যারেক্টার রিটার্ন করে (ট্রানকেট হয়)।

লম্বা আউটপুট পেতে

SET SESSION group_concat_max_len = 1000000;
SELECT GROUP_CONCAT(table_name) FROM information_schema.tables WHERE table_schema = 'web';

বিকল্প: সব টেবিল আলাদা সারিয়ে দেখানো

SELECT table_name FROM information_schema.tables WHERE table_schema = 'web';
  1. MySQL-এ DATE_ADD ও WEEKDAY ব্যবহার করে আগামী রবিবারের তারিখ বের করা

  2. MySQL-এ GROUP_CONCAT() ব্যবহার করে রেজাল্ট এক লাইনে দেখানো

  3. MySQL-এ INFORMATION_SCHEMA.COLUMNS দিয়ে নির্দিষ্ট কলাম কোন টেবিলে আছে তা খুঁজে বের করা

  4. MySQL ডেটাবেসের সব টেবিল লিস্ট করা