একটি সারণীতে কলামের সংখ্যা সন্ধান করুন


122

কোনও টেবিলের মধ্যে সারিগুলির সংখ্যা পাওয়া সম্ভব:

select count(*) from tablename

কোনও টেবিলের কলামগুলির সংখ্যা খুঁজে পাওয়া সম্ভব?

উত্তর:


204
SELECT COUNT(*)
  FROM INFORMATION_SCHEMA.COLUMNS
 WHERE table_catalog = 'database_name' -- the database
   AND table_name = 'table_name'

1
হাই আমি দাঁড়াতে পারছি না, এখানে তথ্য আপনি দয়া করে আমাকে আবার জিজ্ঞাসা দিতে পারেন .. টেবিলের নাম = পোস্ট কলামগুলি = পোস্টিংআইডি, পোস্টিংডেট, দেহ
প্রবীণজয়পাল

2
আমি বিভ্রান্ত না হলে আপনি সারণীতে কতগুলি কলাম রয়েছে তা সন্ধান করছেন। আপনি যদি নিম্নলিখিত কোয়েরিটি সম্পাদন করেন তবে এটি 3 টি ফিরে আসবে (একমাত্র কলাম পোস্টিংআইড, পোস্টিংডেট এবং বডি ধরে নিলে) নির্বাচন করুন নির্বাচন করুন (*) থেকে তথ্য_চেমি C COLUMNS যেখানে টেবিলের নাম = 'পোস্ট'
নাথান কোপ

10
আমার মনে হয় আপনার পরিবর্তনশীল 'ডাটাবেস_নাম' এর জন্য উপরে "টেবিল_সেইমা" প্রতিস্থাপন করতে হবে
হার্ভে দারভে

মাইএসকিউএল জমিতে (প্রশ্নে ট্যাগ করা) ... একটি মাইএসকিউএল এএনএসআই এসকিউএল এর databaseসমতুল্য schemaএবং table_catalogসর্বদা হয়def
স্টিভ বুজোনাস

1
"টেবিল_ক্যাটালগ" "TABLE_SCHEMA"
চামারা মদুরঙ্গ

39
SELECT COUNT(COLUMN_NAME) 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE 
    TABLE_CATALOG = 'Database name' 
    AND TABLE_SCHEMA = 'dbo' 
    AND TABLE_NAME = 'table name'

1
এই উত্তরটি নিখুঁতভাবে কাজ করে, কমপক্ষে মাইক্রোসফ্ট এসকিউএল সার্ভারের সাথে
আন্তোনিও সেরানানো

8
SELECT count(*)
FROM information_schema.columns
WHERE table_name = 'Your_table_name';

দ্রষ্টব্য: আপনার_সারণযোগ্য_নামটি আপনার আসল সারণীর নাম দ্বারা প্রতিস্থাপন করা উচিত


6

জাভাতে জেডিবিসি ব্যবহার:

    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);

2
এটি একটি ভাল জেনেরিক পদ্ধতির (আরডিবিএমএস অগ্নিস্টিক)। আমি কেবলমাত্র ক্যোয়ারিতে পরিবর্তন করার পরামর্শ দিই SELECT * FROM sample2 WHERE 1=2। এইভাবে, আপনি স্কিমা পেতে পারেন তবে কোনও ডেটা নেই, যা অনাহীন ওভারহেড যুক্ত করতে পারে।
ক্যাসকেডার

5

কিছুটা দেরি হয়ে গেছে তবে দয়া করে আমার কাছ থেকে নিয়ে যান ...

সম্পাদকের (নিউ ক্যোয়ারী) ডাটাবেস অবজেক্টটি নির্বাচন করে এটি একটি টেবিলও হতে পারে, যদি আমরা শর্টকাট কী Alt + F1 ব্যবহার করি তবে আমরা বস্তুর সমস্ত তথ্য পেয়ে যাব এবং আমি মনে করি আপনার সমস্যারও সমাধান করবে।



4

ঠিক আছে আমি নাথান কোপের উত্তর চেষ্টা করেছিলাম এবং এটি আমার পক্ষে কার্যকর হয়নি। আমি এটি নিম্নলিখিতটিতে পরিবর্তন করেছি এবং এটি কার্যকর হয়েছে:

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- এই উত্তরের মন্তব্যগুলি দেখুন।
পল ক্যাম্পবেল

3

অথবা সিস্টেমে কলামগুলি ব্যবহার করুন

--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

INFORMATION_SCHEMA.COLUMNS কোথায় TABLE_NAME = '<YOURTABLENAME>' থেকে COUNT টি (*) নির্বাচন
রুডি Hinojosa

2
SELECT COUNT(COLUMN_NAME) FROM INFORMATION_SCHEMA.COLUMNS WHERE 
TABLE_CATALOG = 'database_name' AND TABLE_SCHEMA = 'dbo'
AND TABLE_NAME = 'table_name'

2

কেবলমাত্র পিএইচপি কোডের 3 টি সাধারণ লাইন ব্যবহার করে কোনও টেবিলের কলামগুলির সংখ্যা খুঁজে পাওয়া সম্ভব।

$sql="SELECT * FROM table";
$query=mysqli_query($connect_dude,$sql);    
$num=mysqli_num_fields($query);

$numএক্ষেত্রে columnsপ্রদত্ত টেবিলের নম্বরটি ফিরিয়ে দেবে ।

আশা করি, এটি অন্যকে সহায়তা করবে।


1

কোনও টেবিলের কলামগুলির সংখ্যা গণনা করার জন্য প্রশ্ন:

select count(*) from user_tab_columns where table_name = 'tablename';

টেবিলের নামটি টেবিলের নামের সাথে প্রতিস্থাপন করুন যার মোট কলাম আপনি ফিরে পেতে চান।


এটি কি এমওয়াইএসকিউএল এর জন্য প্রযোজ্য, কারণ আমি এটি
সম্পাদন করতে

1

নিম্নলিখিত স্কয়ার বিবৃতি ব্যবহার করতে পারেন:

select count(*) Noofcolumns from SYSCOLUMNS where id=(select id from SYSOBJECTS where name='table_name')

1
SELECT COUNT(*) 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE 
   TABLE_NAME = 'table_name';

উপরে বর্ণিতদের এসকিউএল সার্ভার ডাটাবেসে একটি নির্দিষ্ট টেবিলের কলামগুলির সংখ্যা পেতে কাজ করা উচিত।
আনিল গোপলানী

1

db2 'describe table "SCHEMA_NAME"."TBL_NAME"'


1
যদিও এটি আসল প্রশ্নটির সমাধান করতে পারে, তবে কোনও বিবরণ অন্তর্ভুক্ত করা ভাল তাই আমরা কী জানি কী তা জানতে পারি।
টেডিনোজ

1
দয়া করে একটি উত্তর হিসাবে কেবল কোড পোস্ট করবেন না, তবে আপনার কোডটি কী করে এবং কীভাবে এটি সমস্যার সমস্যার সমাধান করে তার একটি ব্যাখ্যাও অন্তর্ভুক্ত করুন। একটি ব্যাখ্যা সহ উত্তরগুলি সাধারণত উচ্চমানের হয় এবং এগুলি আরও বেশি আকর্ষণ করার সম্ভাবনা থাকে।
সুরজ কুমার

0

নিম্নলিখিত জিজ্ঞাসাটি সারণিতে কলামগুলি কীভাবে সন্ধান করে:

 SELECT COUNT(COLUMN_NAME) FROM USER_TAB_COLUMNS
 WHERE TABLE_NAME = 'TableName';

0

একটি মাইএসকিউএল উত্তর এমএসকিএন থেকে মাইএসকিএলডিটাআরডিডার.গেটভ্যালু উদাহরণ থেকে কিছুটা অভিযোজিত :

//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ফলে আপনি যে সারিটি অনুসন্ধান করেছেন তার কলামগুলির সংখ্যা পুনরুদ্ধার করতে দেবে।


0
SELECT TABLE_SCHEMA
    , TABLE_NAME
    , number = COUNT(*) 
FROM INFORMATION_SCHEMA.COLUMNS
GROUP BY TABLE_SCHEMA, TABLE_NAME;

এই আমার জন্য কাজ করে।


0

যেহেতু সমস্ত উত্তর ব্যবহার করছে তাই COUNT()আপনি MAX()নির্দিষ্ট সারণীতে কলামগুলির সংখ্যা পেতেও এটি ব্যবহার করতে পারেন

SELECT MAX(ORDINAL_POSITION) NumberOfColumnsInTable
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_CATALOG = 'YourDatabaseNameHere'
      AND 
      TABLE_SCHEMA = 'YourSchemaNameHere'
      AND
      TABLE_NAME = 'YourTableNameHere';

দেখা The INFORMATION_SCHEMA COLUMNS Table


-1

পাইথন 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()))

উৎস

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.