الگوریتم اول

لطفا صبر کنید...

توابع جمعی (Aggregate Functions) در SQL برای انجام عملیات ریاضی بر روی مجموعه‌ای از داده‌ها استفاده می‌شوند و معمولاً همراه با دستور GROUP BY برای گروه‌بندی داده‌ها مورد استفاده قرار می‌گیرند. این توابع می‌توانند بر روی ستون‌های مختلف اعمال شوند و نتایج آماری یا خلاصه‌ای از داده‌ها را فراهم کنند. در اینجا به پنج تابع جمعی پرکاربرد در SQL اشاره خواهیم کرد:

1. COUNT:

تابع COUNT برای شمارش تعداد رکوردها در یک ستون یا تعداد رکوردهای غیر NULL در یک ستون خاص استفاده می‌شود. این تابع یکی از پرکاربردترین توابع جمعی است.

ساختار:

SELECT COUNT(ستون)
FROM جدول
WHERE شرایط;

مثال:

شمارش تعداد کاربران در جدول کاربران:

SELECT COUNT(*) FROM کاربران;

این دستور تعداد تمام رکوردهای جدول کاربران را می‌شمارد.

شمارش تعداد کاربران با یک شرط خاص (مثلاً شهر "تهران"):

SELECT COUNT(*) FROM کاربران WHERE شهر = 'تهران';

2. SUM:

تابع SUM برای محاسبه مجموع مقادیر یک ستون عددی استفاده می‌شود. این تابع فقط بر روی ستون‌هایی که نوع داده آن‌ها عددی است (مانند INT، DECIMAL و ...) قابل استفاده است.

ساختار:

SELECT SUM(ستون)
FROM جدول
WHERE شرایط;

مثال:

محاسبه مجموع قیمت‌های یک محصول در جدول فاکتورها:

SELECT SUM(قیمت) FROM فاکتورها;

این دستور مجموع تمام قیمت‌ها در جدول فاکتورها را محاسبه می‌کند.

3. AVG:

تابع AVG برای محاسبه میانگین (میانگین حسابی) مقادیر یک ستون عددی استفاده می‌شود. این تابع مشابه SUM است، اما نتیجه آن به صورت میانگین محاسبه می‌شود.

ساختار:

SELECT AVG(ستون)
FROM جدول
WHERE شرایط;

مثال:

محاسبه میانگین قیمت‌ها در جدول فاکتورها:

SELECT AVG(قیمت) FROM فاکتورها;

این دستور میانگین قیمت‌ها را در جدول فاکتورها محاسبه می‌کند.

4. MIN:

تابع MIN برای پیدا کردن کوچک‌ترین مقدار در یک ستون استفاده می‌شود. این تابع می‌تواند بر روی هر نوع داده‌ای (عددی، متنی و تاریخ) اعمال شود.

ساختار:

SELECT MIN(ستون)
FROM جدول
WHERE شرایط;

مثال:

یافتن کمترین قیمت در جدول فاکتورها:

SELECT MIN(قیمت) FROM فاکتورها;

این دستور کمترین قیمت را از جدول فاکتورها نمایش می‌دهد.

5. MAX:

تابع MAX برای پیدا کردن بزرگ‌ترین مقدار در یک ستون استفاده می‌شود. مانند تابع MIN، این تابع نیز می‌تواند بر روی انواع مختلف داده‌ها اعمال شود.

ساختار:

SELECT MAX(ستون)
FROM جدول
WHERE شرایط;

مثال:

یافتن بیشترین قیمت در جدول فاکتورها:

SELECT MAX(قیمت) FROM فاکتورها;

این دستور بزرگ‌ترین قیمت را از جدول فاکتورها نمایش می‌دهد.

6. استفاده از توابع جمعی با GROUP BY:

توابع جمعی معمولاً همراه با دستور GROUP BY برای گروه‌بندی داده‌ها و انجام محاسبات بر روی هر گروه به‌طور جداگانه استفاده می‌شوند. در این صورت، به‌جای محاسبه بر روی تمام داده‌ها، محاسبات بر روی هر گروه از داده‌ها انجام می‌شود.

مثال:

فرض کنید جدولی به نام فاکتورها داریم که شامل اطلاعات مربوط به قیمت، تاریخ و شهر است. اگر بخواهیم مجموع قیمت‌ها و میانگین قیمت‌ها را برای هر شهر محاسبه کنیم، می‌توانیم از GROUP BY به همراه توابع جمعی استفاده کنیم:

SELECT شهر, SUM(قیمت) AS مجموع_قیمت, AVG(قیمت) AS میانگین_قیمت
FROM فاکتورها
GROUP BY شهر;

این دستور مجموع و میانگین قیمت‌ها را برای هر شهر محاسبه می‌کند.

7. تفاوت توابع جمعی با توابع غیر جمعی:

  • توابع جمعی مانند COUNT, SUM, AVG, MIN, MAX بر روی مجموعه‌ای از داده‌ها عمل می‌کنند و یک نتیجه خلاصه یا آماری را تولید می‌کنند.
  • توابع غیرجمعی مانند SELECT و WHERE بر روی تک‌تک رکوردها عمل می‌کنند و داده‌های مفصل‌تری را باز می‌گردانند.

نتیجه‌گیری:

توابع جمعی در SQL ابزارهای قدرتمندی هستند که برای انجام محاسبات روی مجموعه‌ای از داده‌ها استفاده می‌شوند. این توابع به‌ویژه در تحلیل‌های داده و گزارش‌گیری از پایگاه‌داده‌ها بسیار کاربرد دارند.