Bir tablodaki satır sayısını bulmak mümkündür:
select count(*) from tablename
Bir tablodaki sütun sayısını bulmak mümkün mü?
Bir tablodaki satır sayısını bulmak mümkündür:
select count(*) from tablename
Bir tablodaki sütun sayısını bulmak mümkün mü?
Yanıtlar:
SELECT COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_catalog = 'database_name' -- the database
AND table_name = 'table_name'
database, schemaANSI table_catalogdef
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';
Not: Your_table_name, gerçek tablo adınızla değiştirilmelidir
Java'da JDBC'yi kullanma:
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. Bu şekilde, şemayı alabilirsiniz, ancak gereksiz ek yük ekleyebilecek verileri elde edemezsiniz.
SELECT count(*) FROM information_schema.`COLUMNS` C
WHERE table_name = 'your_table_name'
AND TABLE_SCHEMA = "your_db_name"
Nathan Koop'un cevabını denedim ve benim için işe yaramadı. Bunu şu şekilde değiştirdim ve işe yaradı:
SELECT COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'table_name'
Ne koyarsam USE 'database_name'da işe yaramadı WHERE table_catalog = 'database_name' AND table_name' = 'table_name'. Aslında nedenini bildiğim için mutlu olacağım.
database_name, varsayılan veritabanını ayarlar, böylece verdiğiniz herhangi bir ifadede tablo adlarını nitelendirmeniz gerekmez. Burada bilgi_seması columnsiçinde olduğunu söyleyerek tablo adını nitelendirirsiniz . table_catalogmysql'de yalnızca diğer dbs ile uyumluluk amacıyla bulunur, bununla aynı değildir table_schema- bu cevabın altındaki yorumlara bakın.
Veya sys.columns'u kullanın
--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
Bir tablodaki sütun sayısını sadece 3 basit PHP kod satırı kullanarak bulmak mümkündür.
$sql="SELECT * FROM table";
$query=mysqli_query($connect_dude,$sql);
$num=mysqli_num_fields($query);
$numcolumnsbu durumda belirli bir tablodaki sayısını döndürür .
Umarım başkalarına yardımcı olur.
Bir tablodaki sütunların sayısını saymak için sorgu:
select count(*) from user_tab_columns where table_name = 'tablename';
Tablo adını, toplam sütun sayısının döndürülmesini istediğiniz tablonun adıyla değiştirin.
Aşağıdaki sql ifadesini kullanabilirsiniz:
select count(*) Noofcolumns from SYSCOLUMNS where id=(select id from SYSOBJECTS where name='table_name')
SELECT COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE
TABLE_NAME = 'table_name';
db2 'describe table "SCHEMA_NAME"."TBL_NAME"'
Aşağıdaki sorgu, tablodaki sütunların nasıl olduğunu bulur: -
SELECT COUNT(COLUMN_NAME) FROM USER_TAB_COLUMNS
WHERE TABLE_NAME = 'TableName';
MySqlDataReader.GetValues için MSDN örneğinden biraz uyarlanmış bir MySQL yanıtı :
//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]);
}
Kullanmak MySqlDataReader.FieldCount, sorguladığınız satırdaki sütun sayısını almanıza olanak sağlar.
Tüm yanıtlar kullanıldığından COUNT(), MAX()belirli bir tablodaki sütun sayısını aşağıdaki gibi almak için de kullanabilirsiniz:
SELECT MAX(ORDINAL_POSITION) NumberOfColumnsInTable
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_CATALOG = 'YourDatabaseNameHere'
AND
TABLE_SCHEMA = 'YourSchemaNameHere'
AND
TABLE_NAME = 'YourTableNameHere';
Python 3, sqlite3 ve pragma deyimini kullanarak bir dizi tablo sütununu nasıl elde edeceğiniz aşağıda açıklanmıştır:
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()))