sql 中用于分組查詢的語句是 group by,它按照指定列或表達式對數據集進行分組,并計算每個組的聚合值,如求和或求平均值。例如,group by product_name 和 sum(sales_amount) 可以計算每個產品的總銷售額,產生以下結果:product_name, total_sales,其中 product_name 是分組列,total_sales 是每個組的銷售額總和。group by 查詢可以嵌套以創建更復雜的分組,例如,嵌套 group by product_ca
SQL 中用于分組查詢的語句
分組查詢是一種將數據集按照特定列或表達式進行分組,并計算每個組的聚合值(如求和、求平均值)的查詢。在 SQL 中,用于分組查詢的主要語句是 GROUP BY。
GROUP BY 語句
GROUP BY 語句的基本語法如下:
<code>SELECT 列名, <a style="color:#f60; text-decoration:underline;" href="https://www.php.cn/zt/51779.html" target="_blank">聚合函數</a>(列名) FROM table_name GROUP BY 列名</code>
登錄后復制
其中:
列名:需要分組的列或表達式。
聚合函數:應用于每個組的聚合函數,如 SUM()、AVG()、COUNT()。
示例
考慮一個名為 “sales” 的表,其中包含以下列:
product_id | product_name | sales_amount |
---|---|---|
1 | Apple | 100 |
2 | Orange | 200 |
3 | Banana | 300 |
4 | Apple | 250 |
5 | Orange | 150 |
要計算每個產品的總銷售額,可以使用以下 GROUP BY 查詢:
<code class="sql">SELECT product_name, SUM(sales_amount) FROM sales GROUP BY product_name;</code>
登錄后復制
查詢結果將如下所示:
product_name | total_sales |
---|---|
Apple | 350 |
Orange | 350 |
Banana | 300 |
嵌套 GROUP BY
GROUP BY 查詢可以嵌套在其他查詢中,以創建更復雜的分組。例如,要計算每個產品類別和每個產品的總銷售額,可以使用以下嵌套 GROUP BY 查詢:
<code class="sql">SELECT product_category, product_name, SUM(sales_amount) FROM sales GROUP BY product_category, product_name;</code>
登錄后復制
查詢結果將如下所示:
product_category | product_name | total_sales |
---|---|---|
Fruits | Apple | 350 |
Fruits | Banana | 300 |
Fruits | Orange | 350 |