博客
关于我
SQL必知必会 第10课 分组数据
阅读量:179 次
发布时间:2019-02-28

本文共 694 字,大约阅读时间需要 2 分钟。

数据分组与过滤

在数据分析中,合理的分组和过滤是提升效率的关键步骤。以下是关于SQL分组的详细指导。

10.2 创建分组

GROUP BY子句用于将数据按指定字段分组。以下示例展示了如何按vend_id分组并计算每个供应商的产品数量:

select vend_id, count(*) as num_prodsfrom productsgroup by vend_id;

10.3 过滤分组

对于分组后的数据,HAVING子句用于进行组级过滤。要过滤出订单数超过2的客户,可以使用以下查询:

select cust_id, count(*) as ordersfrom ordersgroup by cust_idhaving count(*) >= 2;

10.4 分组与排序

GROUP BY和ORDER BY的主要区别在于作用时间和排序方式。

特性 GROUP BY ORDER BY
作用 分组数据 排序输出
可用字段 只能使用选择列或表达式 可以使用任何字段
是否需要 不需要 可选

在使用GROUP BY时,建议配合ORDER BY子句使用,以确保输出的数据按指定顺序排列。

10.5 SELECT子句顺序

SELECT子句中的子句顺序不影响结果,但理解每个子句的作用对写出高效查询至关重要。

子句 说明 是否必须使用
SELECT 返回的列或表达式
FROM 数据源表 仅在选择数据时使用
WHERE 行级过滤
GROUP BY 分组说明 仅在需要聚集时使用
HAVING 组级过滤
ORDER BY 排序 可选

通过合理配置这些子句,可以高效地组织和分析数据。

转载地址:http://jgpn.baihongyu.com/

你可能感兴趣的文章
Objective-C实现Adler32算法(附完整源码)
查看>>
Objective-C实现AES算法(附完整源码)
查看>>
Objective-C实现AffineCipher仿射密码算法(附完整源码)
查看>>
Objective-C实现aliquot sum等分求和算法(附完整源码)
查看>>
Objective-C实现all combinations所有组合算法(附完整源码)
查看>>
Objective-C实现all permutations所有排列算法(附完整源码)
查看>>
Objective-C实现all subsequences所有子序列算法(附完整源码)
查看>>
Objective-C实现AlphaNumericalSort字母数字排序算法(附完整源码)
查看>>
Objective-C实现alternate disjoint set不相交集算法(附完整源码)
查看>>
Objective-C实现alternative list arrange备选列表排列算法(附完整源码)
查看>>
Objective-C实现An Armstrong number阿姆斯特朗数算法(附完整源码)
查看>>
Objective-C实现anagrams字谜算法(附完整源码)
查看>>
Objective-C实现ApproximationMonteCarlo蒙特卡洛方法计算pi值算法 (附完整源码)
查看>>
Objective-C实现area under curve曲线下面积算法(附完整源码)
查看>>
Objective-C实现arithmetic算术算法(附完整源码)
查看>>
Objective-C实现armstrong numbers阿姆斯壮数算法(附完整源码)
查看>>
Objective-C实现articulation-points(关键点)(割点)算法(附完整源码)
查看>>
Objective-C实现atoi函数功能(附完整源码)
查看>>
Objective-C实现average absolute deviation平均绝对偏差算法(附完整源码)
查看>>
Objective-C实现average mean平均数算法(附完整源码)
查看>>