কোনও টেবিলের মধ্যে সারিগুলির সংখ্যা পাওয়া সম্ভব:
select count(*) from tablename
কোনও টেবিলের কলামগুলির সংখ্যা খুঁজে পাওয়া সম্ভব?
কোনও টেবিলের মধ্যে সারিগুলির সংখ্যা পাওয়া সম্ভব:
select count(*) from tablename
কোনও টেবিলের কলামগুলির সংখ্যা খুঁজে পাওয়া সম্ভব?
উত্তর:
SELECT COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_catalog = 'database_name' -- the database
AND table_name = 'table_name'
databaseসমতুল্য schemaএবং table_catalogসর্বদা হয়def
SELECT COUNT(COLUMN_NAME)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE
TABLE_CATALOG = 'Database name'
AND TABLE_SCHEMA = 'dbo'
AND TABLE_NAME = 'table name'
SELECT count(*)
FROM information_schema.columns
WHERE table_name = 'Your_table_name';
দ্রষ্টব্য: আপনার_সারণযোগ্য_নামটি আপনার আসল সারণীর নাম দ্বারা প্রতিস্থাপন করা উচিত
জাভাতে জেডিবিসি ব্যবহার:
String quer="SELECT * FROM sample2";
Statement st=con.createStatement();
ResultSet rs=st.executeQuery(quer);
ResultSetMetaData rsmd = rs.getMetaData();
int NumOfCol=0;
NumOfCol=rsmd.getColumnCount();
System.out.println("Query Executed!! No of Colm="+NumOfCol);
SELECT * FROM sample2 WHERE 1=2। এইভাবে, আপনি স্কিমা পেতে পারেন তবে কোনও ডেটা নেই, যা অনাহীন ওভারহেড যুক্ত করতে পারে।
SELECT count(*) FROM information_schema.`COLUMNS` C
WHERE table_name = 'your_table_name'
AND TABLE_SCHEMA = "your_db_name"
ঠিক আছে আমি নাথান কোপের উত্তর চেষ্টা করেছিলাম এবং এটি আমার পক্ষে কার্যকর হয়নি। আমি এটি নিম্নলিখিতটিতে পরিবর্তন করেছি এবং এটি কার্যকর হয়েছে:
SELECT COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'table_name'
আমি না রাখলে এটিও কাজ করে USE 'database_name'না WHERE table_catalog = 'database_name' AND table_name' = 'table_name'। আমি আসলে কেন খুশি হবে তা জানতে পেরে।
database_nameডিফল্ট ডাটাবেস সেট করে যাতে আপনার ইস্যু করা কোনও বিবৃতিতে আপনার সারণির নামগুলি যোগ্যতার প্রয়োজন হয় না। এখানে আপনি columnsটেবিলের নামটি তথ্য_স্কেমার মধ্যে দিয়ে বলে যোগ্যতা অর্জন করবেন । table_catalogঅন্য dbs সাথে সামঞ্জস্যের উদ্দেশ্যে খালি মাইএসকিএলে উপস্থিত রয়েছে table_schema- এই উত্তরের মন্তব্যগুলি দেখুন।
অথবা সিস্টেমে কলামগুলি ব্যবহার করুন
--SQL 2005
SELECT *
FROM sys.columns
WHERE OBJECT_NAME(object_id) = 'spt_values'
-- returns 6 rows = 6 columns
--SQL 2000
SELECT *
FROM syscolumns
WHERE OBJECT_NAME(id) = 'spt_values'
-- returns 6 rows = 6 columns
SELECT *
FROM dbo.spt_values
-- 6 columns indeed
কেবলমাত্র পিএইচপি কোডের 3 টি সাধারণ লাইন ব্যবহার করে কোনও টেবিলের কলামগুলির সংখ্যা খুঁজে পাওয়া সম্ভব।
$sql="SELECT * FROM table";
$query=mysqli_query($connect_dude,$sql);
$num=mysqli_num_fields($query);
$numএক্ষেত্রে columnsপ্রদত্ত টেবিলের নম্বরটি ফিরিয়ে দেবে ।
আশা করি, এটি অন্যকে সহায়তা করবে।
কোনও টেবিলের কলামগুলির সংখ্যা গণনা করার জন্য প্রশ্ন:
select count(*) from user_tab_columns where table_name = 'tablename';
টেবিলের নামটি টেবিলের নামের সাথে প্রতিস্থাপন করুন যার মোট কলাম আপনি ফিরে পেতে চান।
SELECT COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE
TABLE_NAME = 'table_name';
db2 'describe table "SCHEMA_NAME"."TBL_NAME"'
নিম্নলিখিত জিজ্ঞাসাটি সারণিতে কলামগুলি কীভাবে সন্ধান করে:
SELECT COUNT(COLUMN_NAME) FROM USER_TAB_COLUMNS
WHERE TABLE_NAME = 'TableName';
একটি মাইএসকিউএল উত্তর এমএসকিএন থেকে মাইএসকিএলডিটাআরডিডার.গেটভ্যালু উদাহরণ থেকে কিছুটা অভিযোজিত :
//assumes you've already created a connection, opened it,
//and executed a query to a reader
while(reader.Read())
{
Object[] values = new Object[reader.FieldCount];
int fieldCount = reader.GetValues(values);
Console.WriteLine("\nreader.GetValues retrieved {0} columns.", fieldCount);
for (int i = 0; i < fieldCount; i++)
Console.WriteLine(values[i]);
}
ব্যবহারের MySqlDataReader.FieldCountফলে আপনি যে সারিটি অনুসন্ধান করেছেন তার কলামগুলির সংখ্যা পুনরুদ্ধার করতে দেবে।
যেহেতু সমস্ত উত্তর ব্যবহার করছে তাই COUNT()আপনি MAX()নির্দিষ্ট সারণীতে কলামগুলির সংখ্যা পেতেও এটি ব্যবহার করতে পারেন
SELECT MAX(ORDINAL_POSITION) NumberOfColumnsInTable
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_CATALOG = 'YourDatabaseNameHere'
AND
TABLE_SCHEMA = 'YourSchemaNameHere'
AND
TABLE_NAME = 'YourTableNameHere';
পাইথন 3, স্ক্লাইটাইট 3 এবং প্রগমা বিবৃতিটি ব্যবহার করে আপনি এখানে কতগুলি টেবিল কলাম পেতে পারেন:
con = sqlite3.connect(":memory:")
con.execute("CREATE TABLE tablename (d1 VARCHAR, d2 VARCHAR)")
cur = con.cursor()
cur.execute("PRAGMA table_info(tablename)")
print(len(cur.fetchall()))