oracle 中的 group by 語句用于根據(jù)指定列分組數(shù)據(jù)并聚合匯總值,語法為:select 聚合函數(shù)(列名), 分組列 from 表名 group by 分組列。功能包括將相同分組列值的數(shù)據(jù)分組、對(duì)每個(gè)組應(yīng)用聚合函數(shù)以計(jì)算匯總值,分組列用于對(duì)數(shù)據(jù)進(jìn)行分組,聚合函數(shù)用于計(jì)算匯總值。
Oracle 中 GROUP BY 的用法
GROUP BY 是 Oracle 中用于根據(jù)指定列對(duì)數(shù)據(jù)進(jìn)行分組并聚合的 SQL 語句。
語法
<code>SELECT <a style="color:#f60; text-decoration:underline;" href="https://www.php.cn/zt/51779.html" target="_blank">聚合函數(shù)</a>(列名), 分組列 FROM 表名 GROUP BY 分組列</code>
登錄后復(fù)制
功能
將相同分組列值的數(shù)據(jù)分組在一起。
對(duì)每個(gè)組應(yīng)用聚合函數(shù)(如 SUM、COUNT、AVG)以計(jì)算匯總值。
分組列
分組列是用于對(duì)數(shù)據(jù)進(jìn)行分組的列。可以一次分組多個(gè)列。
聚合函數(shù)
聚合函數(shù)是對(duì)每個(gè)組計(jì)算匯總值。Oracle 支持多種聚合函數(shù),包括:
SUM
COUNT
AVG
MAX
MIN
示例
查詢客戶的總訂單數(shù)量:
<code>SELECT COUNT(order_id), customer_id FROM orders GROUP BY customer_id;</code>
登錄后復(fù)制
查詢每個(gè)產(chǎn)品的平均訂單數(shù):
<code>SELECT AVG(order_quantity), product_id FROM order_details GROUP BY product_id;</code>
登錄后復(fù)制
注意:
分組列必須出現(xiàn)在 SELECT 子句中。
聚合函數(shù)必須出現(xiàn)在 SELECT 子句中并帶有分組列。
NULL 值不會(huì)影響分組,而是被視為一個(gè)單獨(dú)的組。






