SQL Server (Transact-SQL)-এ GROUP BY ক্লজ SELECT স্টেটমেন্টে একাধিক রেকর্ড থেকে ডেটা রিট্রিভ করে এবং ফলাফল ১ বা একাধিক কলামে গ্রুপ করতে ব্যবহৃত হয়।
SQL Server-এ GROUP BY ক্লজ সিনট্যাক্স
SELECT bieuthuc1, bieuthuc2, … bieuthuc_n, ham_tong(bieuthuc) FROM bang [WHERE dieukien] GROUP BY bieuthuc1, bieuthuc2, … bieuthuc_n;
ভেরিয়েবল নাম বা মান
bieuthuc1, bieuthuc2, ... bieuthuc_n
যে এক্সপ্রেশন যোগফল ফাংশনের ভেতরে নয় এবং GROUP BY ক্লজে থাকতে হবে।
ham_tong
SUM, COUNT, MIN, MAX বা AVG যেন ফাংশন।
bang
রেকর্ড রিট্রিভ করতে চাওয়া টেবিল, FROM ক্লজে কমপক্ষে ১ টি টেবিল থাকতে হবে।
WHERE dieukien
ঐচ্ছিক। WHERE ক্লজে রেকর্ড সিলেক্ট করার শর্ত।
উদাহরণ - SUM ফাংশন ব্যবহার
SELECT ten_sanpham, SUM(soluong) AS 'Tong so luong' FROM sanpham GROUP BY ten_sanpham;
এই উদাহরণ SUM ক্যালকুলেশন ফাংশন ব্যবহার করে প্রোডাক্ট নাম এবং মোট কuantity (প্রোডাক্ট নাম অনুযায়ী) রিটার্ন করে।
SELECT স্টেটমেন্টে আপনি একটি কলাম (ten_sanpham) দিয়েছেন যা SUM ফাংশনের ভেতরে নয়, তাই GROUP BY ক্লজ ব্যবহার করতে হয়।
উদাহরণ - COUNT ফাংশন ব্যবহার
SELECT quanly_id, COUNT(*) AS 'So nhan vien' FROM nhanvien WHERE ho = 'Anderson' GROUP BY quanly_id;
এই উদাহরণে, COUNT ফাংশন quanly_id এবং উপনাম Anderson वाले কর্মচারীদের সংখ্যা রিটার্ন করবে।
উদাহরণ - MIN ফাংশন ব্যবহার
SELECT loai_sanpham, MIN(soluong) AS 'So luong it nhat' FROM sanpham GROUP BY loai_sanpham;
MIN ফাংশনসহ GROUP BY ক্লজ উপরের উদাহরণ প্রোডাক্ট টাইপ এবং সেই প্রোডাক্ট টাইপের ন্যূনতম কuantity রিটার্ন করবে।
উদাহরণ - MAX ফাংশন ব্যবহার
SELECT bophan, MAX(luong) AS 'Luong cao nhat' FROM nhanvien GROUP BY bophan;
এই চূড়ান্ত উদাহরণ প্রতিটি ডিপার্টমেন্টের নাম এবং ডিপার্টমেন্টে সর্বোচ্চ বেতন রিটার্ন করে।