MySQL 的非正统“GROUP BY”查询方法
与 Oracle 和 SQL Server 不同,MySQL 允许在没有聚合函数的情况下使用“group by”查询。这种行为违反了 ANSI-SQL 标准,长期以来一直是混淆的根源。
MySQL 的理由
根据 MySQL 在线手册(5.0 版),这种非传统方法的实现基于两个主要原因:
批评与解决方案
MySQL 的这种方法因不符合 ANSI-SQL 标准而受到批评。为了解决这些问题,MySQL 提供了一个配置参数 only_full_group_by,可以将其设置为强制执行标准行为。
总结
虽然 MySQL 对“group by”查询的非传统处理方式有其缺点,但在性能和便利性方面也提供了优势。开发人员应该了解这种行为,并谨慎使用它,以确保获得准确且有意义的结果。
以上是为什么 MySQL 的'GROUP BY”与标准 SQL 不同?的详细内容。更多信息请关注PHP中文网其他相关文章!