PostgreSQL能否推荐最佳字段类型?

PostgreSQL能否推荐最佳字段类型?,postgresql,types,Postgresql,Types,MySQL提供。给出一个类似于 SELECT `field` FROM `table` PROCEDURE ANALYSE(); 结果提供了建议的字段类型 Optimal_fieldtype: TINYINT(2) UNSIGNED NOT NULL PostgreSQL是否提供类似的功能?我已经看过了/。似乎我可以利用这些信息来推断什么样的数据类型可能是合适的,但如果Postgres能够推荐一种实际的数据类型,那就很方便了。据我所知,Postgres中没有MySQL的过程分析的等价物。(我

MySQL提供。给出一个类似于

SELECT `field` FROM `table` PROCEDURE ANALYSE();
结果提供了建议的字段类型

Optimal_fieldtype: TINYINT(2) UNSIGNED NOT NULL

PostgreSQL是否提供类似的功能?我已经看过了/。似乎我可以利用这些信息来推断什么样的数据类型可能是合适的,但如果Postgres能够推荐一种实际的数据类型,那就很方便了。

据我所知,Postgres中没有MySQL的
过程分析的等价物。(我想我会知道的。)

对于给定的示例,显然是关于整型列,我将:

SELECT min(field), max(field) FROM tbl;
并对照可能的范围进行检查

或用于不同值的分布:

SELECT field, count(*) AS ct FROM tbl GROUP BY 1 ORDER BY 2 DESC;

实际上,任何具有最低经验的DBA都应该知道基本数据类型的基本特征。每个用例的最佳类型取决于比当前范围和值分布更多的内容。MySQL的
PROCEDURE analysis()
基本上是对新手的帮助,他们很容易误解结果。

这取决于“最优”的含义。例如,比较所需的最小空间和最长时间,直到结束;这些可能是相反的,但两者都是“最优的”。确定有限数据集的基数是可能的。把它强加于未来并非如此。数据建模离不开。。。数据建模。这可能不是常见的用例,但对于只读数据库(即@wildplasser的“有限数据集”),自动优化功能将非常有用。这是列出“战争”和“玫瑰战争”的表格之间的区别