Magento Enterprise 1.13 (200 以上) のテーブルの数に驚いています。物事が整理されている方法を把握しようとしていますが、各テーブルの列数を知っておくと役立つと思います。次のクエリは、各テーブルの列とその data_types の内訳を取得します。
SELECT TABLE_NAME, COLUMN_NAME, DATA_TYPE
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = `<database_name>`
ORDER BY TABLE_NAME;
しかし、各テーブルの列数も知りたいです。
SELECT COUNT(COLUMN_NAME)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = '<database_name>'
AND TABLE_NAME IN (
SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = '<database_name>'
);
残念ながら、上記のクエリはデータベース内の列の総数を返します。私のアプローチは単純すぎて、LOOP または FOREACH ステートメントが探しているソリューションに近いことに気付きましたが、その点に飛躍する方法がわかりません。