使用distinct命令

sub*_*dar 3 sql sql-server-2008

在SQL中使用distinct命令是不错的做法?有明显命令的任何缺点吗?

JNK*_*JNK 11

完全取决于您的用例. DISTINCT在某些情况下很有用,但可以过度使用.

缺点主要是增加了对查询引擎负荷进行排序(因为它需要将结果集比较本身,除去重复),它可以被用来在你的数据掩盖一个问题 - 如果你正在重复有可能您的源数据存在问题.

命令本身本身并不好或坏.你可以用螺丝刀敲钉子,但这并不意味着它是一个好主意,或者螺丝刀在所有情况下都是坏的.


gbn*_*gbn 5

如果您需要定期使用它来获得正确的输出,那么您有设计或JOIN问题

否则它完全有效.

它是一种聚合:相当于所有输出列上的GROUP BY.所以这是一个额外的步骤是查询处理