SQL COUNT() Function
🔹 تعریف
-
تابع
()COUNT
تعداد رکوردها (ردیفها) یا مقادیر یک ستون را برمیگرداند. -
میتواند روی همه رکوردها (
COUNT(*)
) یا فقط روی یک ستون خاص اعمال شود.
🔹 حالتهای استفاده
1️⃣ شمارش همه رکوردها
🔹 تعداد کل رکوردهای جدول Customers
را برمیگرداند (حتی اگر ستونها NULL
باشند).
2️⃣ شمارش یک ستون خاص
🔹 فقط ردیفهایی را میشمارد که ستون Email
مقدار NULL نداشته باشند.
3️⃣ شمارش مقادیر یکتا (DISTINCT
)
🔹 تعداد شهرهای متفاوت (Unique) مشتریان را برمیگرداند.
🔹 ترکیب با GROUP BY
مثال: شمارش تعداد مشتریان در هر شهر 👇
خروجی نمونه:
City | NumCustomers |
---|---|
Tehran | 5 |
Shiraz | 3 |
Isfahan | 2 |
🔹 ترکیب با HAVING
فیلتر کردن نتایج بعد از شمارش:
🔹 فقط شهرهایی که بیشتر از ۲ مشتری دارند نمایش داده میشوند.
🔹 مثال واقعی
جدول Orders:
OrderID | CustomerID | Amount |
---|---|---|
1 | 1 | 100 |
2 | 2 | 200 |
3 | 1 | 150 |
4 | 3 | 300 |
کوئری:
🔹 خروجی:
CustomerID | TotalOrders |
---|---|
1 | 2 |
2 | 1 |
3 | 1 |
✅ خلاصه:
-
(*)COUNT
→ شمارش همه ردیفها. -
COUNT(column)
→ شمارش فقط مقادیری کهNULL
نباشند. -
COUNT(DISTINCT column)
→ شمارش مقادیر یکتا. -
خیلی پرکاربرد همراه
GROUP BY
وHAVING
.