首頁 >資料庫 >mysql教程 >如何從單一 SQL 查詢中取得多個計數?

如何從單一 SQL 查詢中取得多個計數?

Linda Hamilton
Linda Hamilton原創
2025-01-20 16:13:11830瀏覽

How Can I Get Multiple Counts from a Single SQL Query?

最佳化SQL查詢:一次取得多個計數

本文示範了一種使用單一 SQL 查詢檢索多個計數的簡化方法。 我們將結合聚合函數來利用 CASE 語句的強大功能。

此策略涉及使用 CASE 根據 level 列對行進行分類,並為每個類別分配一個計數。 然後使用 SUM 聚合這些計數以提供最終結果。

這是一個實現此目的的查詢,每個 distributor_id 傳回一行資料:

<code class="language-sql">SELECT distributor_id,
       COUNT(*) AS total,
       SUM(CASE WHEN level = 'exec' THEN 1 ELSE 0 END) AS ExecCount,
       SUM(CASE WHEN level = 'personal' THEN 1 ELSE 0 END) AS PersonalCount
FROM yourtable
GROUP BY distributor_id;</code>

此方法有效地提供單一查詢結果中特定 level 值的總體計數和單獨計數。

以上是如何從單一 SQL 查詢中取得多個計數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn