哪个应该用于GROUP BY:文本字段或数字字段?

时间:2017-04-09 01:22:22

标签: sql oracle oracle-sqldeveloper

所以,我目前正在参加数据库概念课程(是的,我是菜鸟),教授提出了问题:"在GROUP BY条款中,例如GROUP BY xxxx,我们分组的xxxx应该是文本字段还是数字字段?"

我对此问题感到非常困惑,因为GROUP BY可以是文本字段或数字字段。我试过两次都没有收到任何错误。我意识到GROUP BY文本字段通常更有意义,因为,例如,您想知道有多少产品的price大于50.00。相反的情况可能是不必要的。是否有最佳实践"我在这里失踪的规则?

提前致谢。

1 个答案:

答案 0 :(得分:3)

正确的答案是。 。 。 “xxxx应该是解决手头问题所需的一切。”

您应该查看笔记或与教授交谈以了解该陈述的背景。正如您清楚地了解的那样,SQL查询可以按数字,字符或日期/时间列聚合 - 以及各种其他数据类型。从功能的角度来看,所有都受支持。

使用数字可能会有一些性能优势。这是一个工件,在固定宽度字段上排序通常比在变量长度字段上排序更快(边缘)。但是,我真诚地怀疑你的教授是指这个。