MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLで列数が最も多いテーブルを選択するにはどうすればよいですか?


INFORMATION_SCHEMA.COLUMNSを使用して、列数が最も多いテーブルを取得できます。

構文は次のとおりです-

SELECT TABLE_NAME, COUNT(*) AS anyAliasName
FROM INFORMATION_SCHEMA.COLUMNS
GROUP BY TABLE_NAME
ORDER BY yourAliasName DESC
LIMIT 1;

以下は、列数が最も多いテーブルを選択するためのクエリです。カウントをDESCに設定し、GROUP BY TABLE_NAME-

を使用したため、この結果が得られます。
mysql> SELECT TABLE_NAME, COUNT(*) as TOTAL_COUNT
FROM INFORMATION_SCHEMA.COLUMNS
GROUP BY TABLE_NAME
ORDER BY TOTAL_COUNT DESC
LIMIT 1;

これにより、次の出力が生成されます-

+-----------------------------------+-------------+
| TABLE_NAME                        | TOTAL_COUNT |
+-----------------------------------+-------------+
| table_lock_waits_summary_by_table | 68          |
+-----------------------------------+-------------+
1 row in set (0.12 sec)

以下のクエリを使用して、最小数の列を取得することもできます。カウントをASCに設定し、GROUP BY TABLE_NAME-

を使用したため、この結果が得られます。
mysql> SELECT TABLE_NAME, COUNT(*) as TOTAL_COUNT
FROM INFORMATION_SCHEMA.COLUMNS
GROUP BY TABLE_NAME
ORDER BY TOTAL_COUNT ASC
LIMIT 1;

これにより、次の出力が生成されます-

+-----------------------+-------------+
| TABLE_NAME            | TOTAL_COUNT |
+-----------------------+-------------+
| removenullrecordsdemo | 1           | 
+-----------------------+-------------+
1 row in set (0.14 sec)
>
  1. Javaを使用してMySQLテーブルの列数をカウントする

    これには、ResultSetMetaDataを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,    -> StudentFirstName varchar(20),    -> StudentLastName varchar(20)    -> ); Query OK, 0 r

  2. MySQLで日付レコードを持つテーブルの日付を変更するにはどうすればよいですか?

    日付を変更して年を追加する必要があるとします。このためには、DATE_ADD()とともにUPDATEコマンドを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1984    (    ShippingDate date    ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1984 values('2014