উত্তর:
select * from information_schema.columns
where table_schema = 'your_db'
order by table_name,ordinal_position
সমস্ত কলামের নাম সহজেই পাওয়ার জন্য আপনি নিম্নলিখিত কোয়েরিটি ব্যবহার করে আরও ভাল
Show columns from tablename
SELECT * FROM information_schema.columns
WHERE table_schema = DATABASE()
ORDER BY table_name, ordinal_position
প্রতিস্থাপন: যেহেতু আমি মন্তব্য করার জন্য যথেষ্ট প্রতিনিধির নেই, এখানে একটি ছোটখাট উন্নতি (আমার দৃশ্য) নিক rulez এর চমৎকার উত্তর শেষ WHERE table_schema = 'your_db'
সঙ্গে WHERE table_schema = DATABASE()
।
এটি অন্য কারও পক্ষে উপকারে আসে, এটি আপনাকে প্রতিটি সারণীতে কলামের কমা-বিস্মৃত তালিকা দেবে:
SELECT table_name,GROUP_CONCAT(column_name ORDER BY ordinal_position)
FROM information_schema.columns
WHERE table_schema = DATABASE()
GROUP BY table_name
ORDER BY table_name
দ্রষ্টব্য: সর্বাধিক সংখ্যক কলাম এবং / অথবা দীর্ঘ ক্ষেত্রের নাম সহ সারণীগুলি ব্যবহার করার সময়, group_concat_max_len সীমা সম্পর্কে সচেতন থাকুন , যা ডেটা কেটে যেতে পারে।
<?php
$table = 'orders';
$query = "SHOW COLUMNS FROM $table";
if($output = mysql_query($query)):
$columns = array();
while($result = mysql_fetch_assoc($output)):
$columns[] = $result['Field'];
endwhile;
endif;
echo '<pre>';
print_r($columns);
echo '</pre>';
?>
অনুরূপ উত্তর দ্বারা @suganya পোস্ট এই সরাসরি প্রশ্নের উত্তর না কিন্তু একটি একক টেবিল একটি দ্রুততর বিকল্প নেই:
DESCRIBE column_name;
প্রশ্নটি ছিল:
সমস্ত টেবিলের তালিকা তৈরি না করেই কি মাইএসকিউএলে সমস্ত টেবিল থেকে সমস্ত কলম নাম্বার পাওয়ার কোনও দ্রুত উপায় আছে?
প্রতিটি কলামের জন্য সমস্ত তথ্য পেতে এসকিউএল
select * from information_schema.columns
where table_schema = 'your_db'
order by table_name,ordinal_position
সমস্ত কলাম নাম্বার পেতে এসকিউএল
select COLUMN_NAME from information_schema.columns
where table_schema = 'your_db'
order by table_name,ordinal_position
আমি এই নির্বোধ জিনিসটি অনেক আগে লিখেছিলাম এবং এখনও এটি এখন এবং পরে ব্যবহার করব:
https://gist.github.com/kphretiq/e2f924416a326895233d
মূলত, এটি প্রতিটি "টেবিলগুলি দেখায়", তারপরে প্রতিটি টেবিলে একটি "ডিজাইন করুন", তারপরে এটিকে মার্কডাউন হিসাবে ছড়িয়ে দেয়।
কেবল "যদি নাম " এর নীচে সম্পাদনা করুন এবং যান। আপনার পিমিসকিএল ইনস্টল করা দরকার।
কিছু পঠনযোগ্য পিএইচপি সহ নিকোলার উত্তরের পিগব্যাকিং
$a = mysqli_query($conn,"select * from information_schema.columns
where table_schema = 'your_db'
order by table_name,ordinal_position");
$b = mysqli_fetch_all($a,MYSQLI_ASSOC);
$d = array();
foreach($b as $c){
if(!is_array($d[$c['TABLE_NAME']])){
$d[$c['TABLE_NAME']] = array();
}
$d[$c['TABLE_NAME']][] = $c['COLUMN_NAME'];
}
echo "<pre>",print_r($d),"</pre>";