SQL অ্যাগ্রিগেট ফাংশন ডেটাবেসের ডেটা সম্পর্কে তথ্য পুনরুদ্ধার করে। উদাহরণস্বরূপ, আপনি COUNT ব্যবহার করে জানতে পারেন ডেটাবেসে কতটি রেকর্ড আছে। স্বীকৃত অ্যাগ্রিগেট ফাংশনগুলো হলো: COUNT, MIN, MAX, AVG, এবং SUM।
এই গাইডে আমরা SQL অ্যাগ্রিগেট ফাংশন-এর বেসিক্স, কীভাবে তারা কাজ করে, এবং আপনি কীভাবে আপনার কোয়েরিতে এগুলো ব্যবহার করতে পারেন সেটি আলোচনা করব।
নোট: এই আর্টিকেলের উদ্দেশ্যে আমরা PostgreSQL ব্যবহার করছি।
SQL Aggregate Functions
SQL অ্যাগ্রিগেট ফাংশন ডেটাবেসে কী আছে সে সম্পর্কে তথ্য সংকলন করে। উদাহরণস্বরূপ, আপনি SUM ব্যবহার করে একটি কলামের সকল মানের যোগফল বের করতে পারেন। অ্যাগ্রিগেট ফাংশন আপনার সময় বাঁচায় যখন আপনাকে রেকর্ড একত্রিত করে তথ্য বের করতে হয়।
এখানে SQL-এ আপনি যে অ্যাগ্রিগেট ফাংশনগুলো ব্যবহার করতে পারেন তার তালিকা:
- COUNT
- SUM
- AVG
- MIN
- MAX
চলুন প্রতিটিকে আলাদা আলাদা দেখি। আমরা এই টিউটোরিয়ালে কর্মীদের একটি ডেটাবেসকে রেফার করব।
অ্যাগ্রিগেট ফাংশন SQL SELECT স্টেটমেন্টের শুরুতে ব্যবহার করা হয়।
যদি আপনি একই SELECT স্টেটমেন্টে একটি কলাম এবং একটি অ্যাগ্রিগেট ফাংশন কোয়েরি করেন, তবে আপনাকে অবশ্যই SQL GROUP BY ক্লজ ব্যবহার করতে হবে। এই ক্লজ SQL-কে বলে আপনার কোয়েরিতে ডেটা কীভাবে উপস্থাপিত হবে।
SQL COUNT
SQL COUNT ফাংশন একটি কোয়েরি দিয়ে ফেরত আসা সারির মোট সংখ্যা ফেরত দেয়। WHERE স্টেটমেন্ট ব্যবহার করে, COUNT ফাংশন আপনার শর্ত পূরণকারী সারির সংখ্যা ফেরত দেয়।
উদাহরণস্বরূপ, ধরুন আপনি জানতে চান আপনার ব্যবসার স্ট্যামফোর্ড শাখায় কতজন কর্মী কাজ করে। আপনি নিচের কোয়েরি ব্যবহার করে এই তথ্য বের করতে পারেন:
SELECT COUNT(name) FROM employees WHERE branch = "Stamford";
আমাদের কোয়েরি স্ট্যামফোর্ড শাখায় কাজ করা কর্মীর সংখ্যা ফেরত দেয়:
| count |
| 1 |
(১ সারি)
SQL MIN এবং MAX
SQL MIN ফাংশন একটি কলামের সবচেয়ে ছোট মান ফেরত দেয়। একটি SQL MAX স্টেটমেন্ট একটি কলামের সবচেয়ে বড় মান ফেরত দেয়। এই দুটি স্টেটমেন্টই SQL অ্যাগ্রিগেট ফাংশন।
উদাহরণস্বরূপ, ধরুন আপনি একক ব্যক্তি যে ধারণ করেছে employee of the month পুরস্কারের সবচেয়ে কম সংখ্যা পেতে চান। আমরা নিচের কোয়েরি ব্যবহার করে এই ডেটা পেতে পারি:
SELECT MIN(employee_month_awards) FROM employees;
আমাদের কোয়েরি ফেরত দেয়:
| min |
| 1 |
(১ সারি)
যদি আমরা একক ব্যক্তি ধারিত employee of the month পুরস্কারের সর্বোচ্চ সংখ্যা পেতে চাই, তবে আমরা MAX ফাংশন ব্যবহার করব:
SELECT MAX(employee_month_awards) FROM employees;
আমাদের কোয়েরির আউটপুট নিচের মতো:
| max |
| 6 |
(১ সারি)
দ্রষ্টব্য, আপনি আপনার ডেটাবেসের সংখ্যাসূচক এবং আক্ষরিক উভয় তথ্যে MIN এবং MAX ফাংশন ব্যবহার করতে পারেন।
যদি আপনি আপনার ডেটাবেস থেকে বর্ণানুক্রমে প্রথমে আসা নাম পেতে চান, তবে MIN(name) ব্যবহার করতে পারেন। একইভাবে, MAX(name) ব্যবহার করে বর্ণানুক্রমে শেষে আসা নাম পেতে পারেন।
SQL AVG
SQL AVG ফাংশন একটি নির্দিষ্ট কলামের গড় মান ফেরত দেয়।
ধরুন আমরা প্রতিটি কর্মী ধারিত employee of the month পুরস্কারের গড় সংখ্যা পেতে চাই। আমরা নিচের কোয়েরি ব্যবহার করে এই লক্ষ্য পূরণ করব:
SELECT AVG(employee_month_awards) FROM employees;
আমাদের কোয়েরি employee of the month ডেটার গড় বের করে নিচের ফলাফল সেট ফেরত দেয়:
| avg |
| 4 |
(১ সারি)
SQL SUM
SQL SUM ফাংশন একটি নির্দিষ্ট কলামের মোট যোগফল বের করে।
ধরুন আপনি জানতে চান মোট কতটি employee of the month পুরস্কার দেওয়া হয়েছে। এই তথ্য সহজে পাওয়া যায় যদি আপনি একটি SQL SUM স্টেটমেন্ট ব্যবহার করেন:
SELECT SUM(employee_month_awards) FROM employees;
আমাদের কোয়েরি নিচের ফলাফল ফেরত দেয়:
| sum |
| 20 |
(১ সারি)
উপসংহার
SQL অ্যাগ্রিগেট ফাংশন ডেটাবেসের ডেটা সম্পর্কে তথ্য ফেরত দেয়। AVG, উদাহরণস্বরূপ, একটি ডেটাবেস কলামের মানের গড় ফেরত দেয়। পাঁচটি অ্যাগ্রিগেট ফাংশন আছে, যেগুলো হলো: MIN, MAX, COUNT, SUM, এবং AVG।
আপনি কি চ্যালেঞ্জের জন্য প্রস্তুত?
একটি অ্যাগ্রিগেট ফাংশন লিখুন যা "Linda" নামের কর্মীদের সংখ্যা বের করবে। উপরের কোয়েরিগুলোর সাথে আপনার কোয়েরি তুলনা করুন দেখুন অর্থপূর্ণ কিনা।
আমরা SQL শিখতে একটি ব্যাপক গাইড লিখেছি। আপনি নতুন লার্নিং রিসোর্স খুঁজছেন তবে আমাদের How to Learn SQL পেজে গাইডটি দেখুন।