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 语句更接近我正在寻找的解决方案,但我不知道如何实现这一点。