SQL SUM() Function

🔹 تعریف

  • تابع ()SUM مجموع مقادیر یک ستون عددی را حساب می‌کند.

  • فقط روی ستون‌های عددی (integer, decimal, float, …) کار می‌کند.

🔹 ساختار کلی

SELECT SUM(column_name) AS TotalValue FROM table_name WHERE condition;

1️⃣ مثال ساده

جدول Orders:

OrderIDCustomerIDAmount
11100
22200
31150
43300

کوئری:

SELECT SUM(Amount) AS TotalSales FROM Orders;

🔹 خروجی:
TotalSales = 750

2️⃣ با شرط (WHERE)

SELECT SUM(Amount) AS Customer1Total FROM Orders WHERE CustomerID = 1;

🔹 جمع خریدهای مشتری با ID=1 → برابر 250

3️⃣ همراه با GROUP BY

SELECT CustomerID, SUM(Amount) AS TotalAmount FROM Orders GROUP BY CustomerID;

🔹 خروجی:

CustomerIDTotalAmount
1250
2200
3300

4️⃣ ترکیب با DISTINCT

SELECT SUM(DISTINCT Amount) AS UniqueTotal FROM Orders;

🔹 جمع مقادیر یکتا در ستون Amount (مقادیر تکراری یک‌بار حساب می‌شوند).

5️⃣ ترکیب با HAVING

SELECT CustomerID, SUM(Amount) AS TotalAmount FROM Orders GROUP BY CustomerID HAVING SUM(Amount) > 200;

🔹 فقط مشتریانی که مجموع خریدشان بیش از 200 است نمایش داده می‌شوند.

🔹 نکات مهم

  • ()SUM مقادیر NULL را نادیده می‌گیرد.

  • می‌توان آن را با توابع دیگر مثل ()AVG(), COUNT(), MAX(), MIN ترکیب کرد.

  • همراه GROUP BY برای گزارش‌گیری خیلی کاربردی است (مثل مجموع فروش هر شهر یا مجموع حقوق هر بخش).

✅ خلاصه:

  • SUM(column) → جمع کل ستون عددی

  • SUM(DISTINCT column) → جمع مقادیر یکتا

  • خیلی پرکاربرد در گزارش‌های مالی و تحلیلی