理论问题,
假设我有四列的表:A,B,C,D。 A和D的值相等,表由A列分区。
性能方面,如果我发出此查询,会有什么不同吗? SELECT SUM(B)GROUP BY A; 或者这个: SELECT SUM(B)GROUP BY D;
换句话说,我问,在分区列上使用GROUP BY是否有任何性能提升?
谢谢
答案 0 :(得分:0)
如果在过滤器上使用分区列(SQL中的WHERE子句),通常会有性能提升
因为两个查询都使用"全表扫描"它不应该在两个查询之间有很大的区别。如果theres是很多分区(比如大约50K),你可能会看到差异,但往往会降低查询性能,但通常情况并非如此。