✏️ Explanatory Question

SQL এ এগ্রিগেট অপারেটরস গুলি উদাহরণ সহযোগে বর্ণনা কর।

👁 2 Views
📘 Detailed Answer
🟢 Easy
💡

Answer with Explanation

SQL Aggregate Operators

Exam-ready answer with definition, syntax, examples, output tables, GROUP BY usage, and conclusion.

Question 12

প্রশ্ন

SQL এ এগ্রিগেট অপারেটরস গুলি উদাহরণ সহযোগে বর্ণনা কর।

Answer: Aggregate Operators / Aggregate Functions in SQL

ভূমিকা

SQL-এ Aggregate Operators বা Aggregate Functions এমন function, যা একাধিক row-এর উপর calculation করে একটি single summary value return করে।

এগুলি সাধারণত report তৈরি, total হিসাব করা, average বের করা, maximum বা minimum value বের করা এবং কোনো table-এর records count করার জন্য ব্যবহার করা হয়।

সহজ ভাষায়: Aggregate function অনেকগুলি row-এর data নিয়ে একটি summary result দেয়। যেমন total salary, average marks, highest marks, lowest marks বা total students count করা।

Aggregate Function-এর সংজ্ঞা

Aggregate Function হলো SQL-এর built-in function, যা একটি column-এর multiple values-এর উপর calculation করে একটি single value return করে।

Definition: An aggregate function performs a calculation on a set of values and returns a single result value.

SQL-এর প্রধান Aggregate Functions

Function কাজ Example Use
COUNT() Row বা value-এর সংখ্যা গণনা করে Total students count করা
SUM() Numeric column-এর total যোগফল বের করে Total salary বের করা
AVG() Numeric column-এর average value বের করে Average marks বের করা
MIN() Column-এর smallest value বের করে Lowest marks বের করা
MAX() Column-এর largest value বের করে Highest marks বের করা

Sample Table: Student

নিচের Student table ব্যবহার করে aggregate functions ব্যাখ্যা করা হলো:

Roll_No Name Department Marks Fee
101 Rahul Computer Science 85 12000
102 Riya Commerce 72 10000
103 Karim Computer Science 90 12000
104 Anita Arts 68 9000
105 Suman Commerce 80 10000

১. COUNT() Function

COUNT() function table-এর rows বা column-এর non-null values-এর সংখ্যা গণনা করে। এটি total records count করার জন্য ব্যবহৃত হয়।

Syntax


SELECT COUNT(column_name)
FROM table_name;
            

Example 1: Total Students Count


SELECT COUNT(*) AS Total_Students
FROM Student;
            

Output

Total_Students
5

এখানে Student table-এ মোট 5টি record আছে, তাই output 5 এসেছে।

Example 2: Department Count


SELECT COUNT(Department) AS Department_Count
FROM Student;
            

এই query Department column-এর non-null values count করবে।

২. SUM() Function

SUM() function কোনো numeric column-এর total যোগফল বের করে। এটি salary, fee, marks, sales বা amount-এর total বের করতে ব্যবহার করা হয়।

Syntax


SELECT SUM(column_name)
FROM table_name;
            

Example: Total Fee


SELECT SUM(Fee) AS Total_Fee
FROM Student;
            

Output

Total_Fee
53000

এখানে সব students-এর Fee যোগ করলে total 53000 হয়।

৩. AVG() Function

AVG() function কোনো numeric column-এর average value বের করে। এটি average marks, average salary বা average price বের করতে ব্যবহৃত হয়।

Syntax


SELECT AVG(column_name)
FROM table_name;
            

Example: Average Marks


SELECT AVG(Marks) AS Average_Marks
FROM Student;
            

Output

Average_Marks
79

এখানে Marks-এর average value 79 এসেছে।

৪. MIN() Function

MIN() function কোনো column-এর smallest বা minimum value বের করে। এটি lowest marks, minimum salary বা minimum price বের করতে ব্যবহৃত হয়।

Syntax


SELECT MIN(column_name)
FROM table_name;
            

Example: Lowest Marks


SELECT MIN(Marks) AS Lowest_Marks
FROM Student;
            

Output

Lowest_Marks
68

Student table-এ সবচেয়ে কম marks হলো 68।

৫. MAX() Function

MAX() function কোনো column-এর largest বা maximum value বের করে। এটি highest marks, maximum salary বা maximum price বের করতে ব্যবহৃত হয়।

Syntax


SELECT MAX(column_name)
FROM table_name;
            

Example: Highest Marks


SELECT MAX(Marks) AS Highest_Marks
FROM Student;
            

Output

Highest_Marks
90

Student table-এ সবচেয়ে বেশি marks হলো 90।

Aggregate Function with GROUP BY

GROUP BY clause ব্যবহার করে rows-কে group করা হয় এবং প্রতিটি group-এর উপর aggregate function apply করা হয়।

যেমন, department-wise average marks বের করতে GROUP BY ব্যবহার করা যায়।

Example: Department-wise Average Marks


SELECT Department, AVG(Marks) AS Average_Marks
FROM Student
GROUP BY Department;
            

Output

Department Average_Marks
Computer Science 87.5
Commerce 76
Arts 68

এখানে প্রতিটি Department অনুযায়ী students-দের average marks বের করা হয়েছে।

Aggregate Function with HAVING

HAVING clause aggregate result-এর উপর condition apply করতে ব্যবহার করা হয়। WHERE clause row filter করে, কিন্তু HAVING clause group বা aggregate result filter করে।

Example: Average Marks 75-এর বেশি এমন Department


SELECT Department, AVG(Marks) AS Average_Marks
FROM Student
GROUP BY Department
HAVING AVG(Marks) > 75;
            

Output

Department Average_Marks
Computer Science 87.5
Commerce 76

এখানে only সেই departments দেখানো হয়েছে যাদের average marks 75-এর বেশি।

Aggregate Function with DISTINCT

DISTINCT ব্যবহার করলে duplicate values বাদ দিয়ে aggregate calculation করা হয়।

Example: Unique Department Count


SELECT COUNT(DISTINCT Department) AS Unique_Departments
FROM Student;
            

Output

Unique_Departments
3

এখানে unique departments হলো Computer Science, Commerce এবং Arts — মোট 3টি।

NULL Values-এর ক্ষেত্রে Aggregate Functions

বেশিরভাগ aggregate functions NULL values ignore করে। তবে COUNT(*) সব rows count করে, NULL থাকলেও row count হয়।

Function NULL Handling
COUNT(*) সব rows count করে, NULL থাকলেও
COUNT(column) শুধুমাত্র non-null values count করে
SUM() NULL values ignore করে
AVG() NULL values ignore করে
MIN() NULL values ignore করে
MAX() NULL values ignore করে

Aggregate Functions Summary Table

Function Purpose Example Query
COUNT() Total rows বা values count করে SELECT COUNT(*) FROM Student;
SUM() Total যোগফল বের করে SELECT SUM(Fee) FROM Student;
AVG() Average value বের করে SELECT AVG(Marks) FROM Student;
MIN() Smallest value বের করে SELECT MIN(Marks) FROM Student;
MAX() Largest value বের করে SELECT MAX(Marks) FROM Student;

Aggregate Functions-এর গুরুত্ব

  • Large dataset থেকে summary result বের করতে সাহায্য করে।
  • Total, average, maximum, minimum এবং count বের করা যায়।
  • Report generation এবং data analysis-এ খুব গুরুত্বপূর্ণ।
  • GROUP BY ব্যবহার করে category-wise analysis করা যায়।
  • HAVING ব্যবহার করে aggregate result filter করা যায়।
  • Business intelligence, dashboard এবং result analysis-এ ব্যবহৃত হয়।

Exam Writing Tips

  • প্রথমে Aggregate Function-এর definition লিখবে।
  • COUNT, SUM, AVG, MIN এবং MAX আলাদা করে ব্যাখ্যা করবে।
  • একটি sample table ব্যবহার করে query এবং output দেখাবে।
  • GROUP BY এবং HAVING-এর ব্যবহার উল্লেখ করলে answer আরও ভালো হবে।
  • NULL handling-এর কথা লিখলে answer বেশি scoring হবে।
  • শেষে summary table এবং conclusion লিখবে।

উপসংহার

সুতরাং, SQL Aggregate Functions database-এর multiple rows থেকে summary information বের করার জন্য অত্যন্ত গুরুত্বপূর্ণ। COUNT(), SUM(), AVG(), MIN() এবং MAX() function ব্যবহার করে records count, total calculation, average calculation, smallest value এবং largest value সহজে বের করা যায়।

GROUP BY clause-এর সঙ্গে aggregate functions ব্যবহার করলে category-wise বা group-wise analysis করা যায়। তাই data analysis, reporting এবং decision-making-এর ক্ষেত্রে SQL aggregate functions-এর ব্যবহার খুবই গুরুত্বপূর্ণ।

Quick Revision Points

  • Aggregate function multiple rows থেকে single value return করে।
  • COUNT() rows বা values count করে।
  • SUM() numeric column-এর total বের করে।
  • AVG() average value বের করে।
  • MIN() smallest value বের করে।
  • MAX() largest value বের করে।
  • GROUP BY group-wise result বের করতে ব্যবহৃত হয়।
  • HAVING aggregate result filter করতে ব্যবহৃত হয়।