我在 postgresql 中有一个包含数百万行的表。一行可以由八个 int4 或十六个 int2 列表示。
我想在此表上有一个多列(btree)索引:create index on mytable(c1,c2,c3,c4,....c8);
我想知道什么是更好的解决方案(出于性能目的):一个具有八个(int4 类型)列的多列索引或一个具有十六个(int2 类型)列的多列索引。
换句话说:
在 mytable 上创建索引 (c_int4_1, c_int4_2, ... c_int4_8);
对比
在 mytable 上创建索引 (c_int2_1,c_int2_2...c_int2_16);
最佳答案
无论哪个最自然地匹配数据的使用。当强制将其转换为另一种格式时,btree 上更高效的任何 yield 都将再次丢失。
关于Postgresql - 一个 ini4 与两个 int2 用于索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8511508/