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