展开全部
ALL表示所有的抄字段袭,有重复的2条,2条都显示。
DISTINCT表示如2113果有重复的5261,只取一条。4102
All关键字是可以省略1653,但是省略all关键字在select子句和union子句会产生很不一样的效果。
distinct语句中select显示的字段只能是distinct指定的字段,其他字段是不可能出现的。
扩展资料
只有在 SELECT 语句还包括 WHERE 子句时,ALL 关键字才有意义。
不应该将 GROUP BY ALL 和访问远程表的查询一起使用。如果查询中也存在 WHERE 子句,则此类查询不支持 GROUP BY ALL;如果查询中不存在 WHERE 子句,GROUP BY ALL 就不会添加值。
如果使用 ALL 关键字,则即使某些组不包含符合搜索条件的行,查询结果也将包括 GROUP BY 子句生成的所有组。如果不使用 ALL 关键字,则包含 GROUP BY 子句的 SELECT 语句仅显示包含符合搜索条件的行的组。
第一个示例仅对数量 > 10 的订单分组。
第二个示例对所有订单分组。
对于没有符合条件的行的组,包含聚合值(平均价格)的列为 NULL。