دسته بندی مقالات
- بیشتر -محصولات
- بیشتر -آخرین مقالات
- بیشتر --
توابع مقایسه ای در پایگاه داده اوراکل
1403/07/14 -
توابع تاریخ در پایگاه داده اوراکل
1403/07/12 -
توابع ریاضی در پایگاه داده اوراکل
1403/07/11 -
توابع رشته ای در پایگاه داده اوراکل
1403/07/10 -
مدیریت زمانبندی (Job) در پایگاه داده اوراکل
1403/07/09 -
مدیریت Trigger در پایگاه داده اوراکل
1403/07/08
توابع تجمیعی عددی در پایگاه داده اوراکل
توابع تجمیعی عددی در پایگاه داده اوراکل
توابع تجمیعی (Aggregate Functions) یکی از ابزارهای قدرتمند SQL در اوراکل برای انجام محاسبات بر روی مجموعهای از دادهها هستند.
این توابع مقادیر متعددی از چندین ردیف را به یک مقدار واحد تبدیل میکنند.
توابع تجمیعی در موارد مختلفی از قبیل گزارشگیری، محاسبات آماری و خلاصهسازی دادهها کاربرد دارند.
از این توابع معمولاً همراه با عبارات GROUP BY و HAVING استفاده میشود، هرچند که میتوان آنها را بدون این عبارات نیز به کار برد.
توابع تجمیعی به صورت گسترده در سیستمهای پایگاه داده رابطهای (RDBMS) برای انجام تحلیلهای پیچیده دادهای استفاده میشوند.
توابع تجمیعی به برنامهنویسان و تحلیلگران داده این امکان را میدهد که اطلاعات حجیم و گسترده را به دادههایی قابل فهم و کاربردی تبدیل کنند.
این توابع بهخصوص در سیستمهای اطلاعاتی، مالی و آماری بسیار مفید هستند.
کاربردهای توابع تجمیعی در پایگاه داده اوراکل
-
محاسبه جمع کل فروشها در یک دوره زمانی مشخص.
-
محاسبه میانگین حقوق کارمندان در هر بخش.
-
تعیین بالاترین و پایینترین نرخ فروش یک محصول.
-
شمارش تعداد رکوردهایی که شرایط خاصی دارند.
-
محاسبه واریانس و انحراف معیار برای دادههای آماری.
توابع تجمیعی اصلی در اوراکل
در اوراکل مجموعهای از توابع تجمیعی وجود دارد که هر یک برای یک منظور خاص استفاده میشود. در ادامه به معرفی و تشریح این توابع میپردازیم:
-
تابع COUNT
تابع COUNT برای شمارش تعداد رکوردها یا مقادیر در یک ستون استفاده میشود. این تابع یکی از پرکاربردترین توابع تجمیعی است و در سناریوهای مختلفی از جمله گزارشگیری و تحلیلهای آماری مورد استفاده قرار میگیرد.
مثال کاربردی:
فرض کنید میخواهید تعداد کل کارمندان در یک شرکت را محاسبه کنید:
SELECT COUNT(*) FROM employees;
-
تابع SUM
تابع SUM برای محاسبه مجموع مقادیر عددی در یک ستون مورد استفاده قرار میگیرد.
این تابع برای تحلیل دادههای عددی، مانند حقوق کارمندان، فروش محصولات، یا مقادیر مالی کاربرد دارد.
مثال کاربردی:
محاسبه مجموع حقوق همه کارمندان:
SELECT SUM(salary) FROM employees;
-
تابع AVG
تابع AVG میانگین مقادیر عددی در یک ستون را محاسبه میکند.
این تابع برای تحلیل دادههای عددی و به دست آوردن میانگین مقادیر مانند میانگین حقوق، میانگین فروش و... بسیار مفید است.
مثال کاربردی:
محاسبه میانگین حقوق کارمندان:
SELECT AVG(salary) FROM employees;
-
تابع MIN
تابع MIN کوچکترین مقدار را در یک ستون مشخص بازمیگرداند. این تابع برای پیدا کردن حداقل مقادیر، مانند پایینترین حقوق یا پایینترین میزان فروش، مورد استفاده قرار میگیرد.
مثال کاربردی:
پیدا کردن کمترین حقوق پرداختی:
SELECT MIN(salary) FROM employees;
-
تابع MAX
تابع MAX بزرگترین مقدار را در یک ستون مشخص بازمیگرداند. این تابع برای پیدا کردن حداکثر مقادیر، مانند بالاترین حقوق یا بالاترین میزان فروش، بسیار کاربردی است.
مثال کاربردی: پیدا کردن بالاترین حقوق پرداختی:
SELECT MAX(salary) FROM employees;
توابع آماری در اوراکل
بعلاوه بر توابع تجمیعی اصلی، اوراکل توابع دیگری نیز ارائه میدهد که برای تحلیلهای آماری پیشرفتهتر استفاده میشوند.
دو تابع مهم در این زمینه VARIANCE و STDDEV هستند که برای محاسبه واریانس و انحراف معیار دادهها به کار میروند.
-
تابع VARIANCE
تابع VARIANCE برای محاسبه واریانس مجموعهای از دادههای عددی استفاده میشود. واریانس معیاری است برای اندازهگیری پراکندگی دادهها نسبت به میانگین.
مثال کاربردی:
محاسبه واریانس حقوق کارمندان:
SELECT VARIANCE(salary) FROM employees;
-
تابع STDDEV
تابع STDDEV انحراف معیار دادهها را محاسبه میکند. انحراف معیار، میزان پراکندگی دادهها را نشان میدهد و اغلب در تحلیلهای آماری به کار میرود.
مثال کاربردی:
محاسبه انحراف معیار حقوق کارمندان:
SELECT STDDEV(salary) FROM employees;
استفاده از توابع تجمیعی با GROUP BY
برای انجام محاسبات تجمیعی بر روی گروههای مختلف از دادهها، از عبارت GROUP BY استفاده میشود.
این عبارت دادهها را بر اساس یک یا چند ستون گروهبندی کرده و توابع تجمیعی را بر روی هر گروه اعمال میکند.
مثال کاربردی:
محاسبه مجموع حقوق در هر بخش:
SELECT department_id, SUM(salary)
FROM employees
GROUP BY department_id;
استفاده از HAVING در توابع تجمیعی
عبارت HAVING برای فیلتر کردن نتایج گروهبندیشده بر اساس شرایط خاصی استفاده میشود.
این عبارت مانند WHERE عمل میکند، اما به جای اعمال بر روی ردیفها، بر روی نتایج گروهبندیشده اعمال میشود.
مثال کاربردی:
نمایش بخشهایی که مجموع حقوق آنها بیش از 100000 است:
SELECT department_id, SUM(salary)
FROM employees
GROUP BY department_id
HAVING SUM(salary) > 100000;
توابع تجمیعی و مدیریت مقادیر NULL
یکی از جنبههای مهم در استفاده از توابع تجمیعی، نحوه برخورد با مقادیر NULL است.
به جز تابع (*)COUNT که همه رکوردها را شمارش میکند، سایر توابع تجمیعی مقادیر NULL را نادیده میگیرند.
به عنوان مثال، اگر ستونی دارای مقادیر NULL باشد و تابع SUM یا AVG بر روی آن اعمال شود، این مقادیر در محاسبه لحاظ نمیشوند.
مثال:
اگر ستونی از حقوقها شامل مقادیر NULL باشد، تابع SUM این مقادیر را نادیده میگیرد:
SELECT SUM(salary) FROM employees;
استفاده از توابع تجمیعی در زیردرخواستها (Subqueries)
توابع تجمیعی میتوانند در زیردرخواستها (subqueries) نیز مورد استفاده قرار گیرند تا نتایج پیچیدهتری حاصل شود.
این روش برای اعمال تحلیلهای پیشرفتهتر روی دادهها و ترکیب نتایج تجمیعی با سایر دادهها مفید است.
مثال کاربردی:
نمایش کارمندانی که حقوقشان بالاتر از میانگین حقوق کل شرکت است:
SELECT employee_id, salary
FROM employees
WHERE salary > (SELECT AVG(salary) FROM employees);
بهینهسازی کوئریهای تجمیعی در پایگاه داده اوراکل
استفاده بهینه از توابع تجمیعی برای حفظ کارایی سیستمهای پایگاه داده بسیار حائز اهمیت است.
در جداول بزرگ، استفاده از توابع تجمیعی میتواند زمانبر و منابعبر باشد.
برای بهینهسازی این توابع، میتوان از تکنیکهایی مانند شاخصگذاری (indexing)، پارتیشنبندی (partitioning)، و استفاده از حافظههای موقت (caching) استفاده کرد.
-
شاخصگذاری
ایجاد شاخصهای مناسب روی ستونهایی که به طور مکرر در کوئریهای تجمیعی استفاده میشوند، میتواند سرعت اجرای کوئریها را بهبود بخشد. -
پارتیشنبندی
تقسیم جداول بزرگ به پارتیشنهای کوچکتر میتواند اجرای توابع تجمیعی را سریعتر کند.
دوره های مرتبط
اموزش پایگاه داده اوراکل Oracle
در دوره آموزش پایگاه داده اوراکل اصول ، مفاهیم ، طراحی ، پیادهسازی و مدیریت پایگاه داده را به صورت جامع آموزش می دهیم .