صفحه اصلی / دوره‌های آموزشی / آموزش sql server 2019، از مقدماتی تا متخصص پایگاه داده / آموزش دستور group by در 2019 sql server و دستور Having (بخش اول)

آموزش دستور group by در 2019 sql server و دستور Having (بخش اول)

آموزش دستور group by در sql server به صورت جامع با دستور Having (بخش اول)
براي خريد اين درس نياز است وارد سايت شويد. در صورت نداشتن حساب کاربري عضو شويد.
رایگان

جلسات دوره


                                                                      
مهدی عباسی
مدرس:

مهدی عباسی

18 سال سابقه برنامه‌نویسی و تدریس برنامه‌نویسی
کسب مقام‌های اول و دوم کشوری در مسابقات برنامه‌نویسی

مهدی عباسی هستم، مسلط به حداقل ۲۰ زبان مطرح برنامه نویسی به صورت پیشرفته، مدیر عامل شرکت آریا نرم افزار و بنیانگذار آکادمی درسمن، مسلط به تدریس دروس تخصصی کاردانی و کارشناسی کامپیوتر، پایگاه داده ها، برنامه نویسی پیشرفته، مبانی برنامه نویسی، مباحث ویژه طراحی وب و .... مشاهده رزومه

آشنایی کامل با دستورات Group By و Having (بخش اول):

در این جلسه می‌خواهیم مبحث گروه بندی داده‌ها را باهم مررو کنیم. تا اینجای کار توانستیم selectهای متعددی را بنویسیم و داده‌ها خود را واکشی کنیم. اما همیشه به این شکل بود که داده‌ها به صورت سطرهای کنارهم و بدون هیچ وابستگی یا گروه بندی نمایش داده می‌شدند. اما از این جلسه می‌خواهیم یاد بگیریم اگر نیاز شد داده‌هایمان را گروه بندی کنیم.  خیلی اوقات بسته بندی یا بخش بندی کردن به ما کمک دهد یک سری محاسبات خیلی خوب انجام دهیم. برای گروه بندی 5 دستور داریم:

(Group By, Having , Grouping Sets, .Rollup, Cube)

 

در این جلسه با دستورات Group By و Having آشنا می‌شوید.
GROUP BY اغلب در زمان استفاده از توابع MIN, SUM, AVG و… در SQL، برای گروه بندی نتایج استفاده می شود. برای گذاشتن شرط روی مقادیر تجمیعی از Having  استفاده می کنیم.


در جلسات گذشته با توابع تجمعی آشنا شدید و گفتیم که می‌توانیم مقدار یک ستون را در نظر بگیریم و یکسری توابع مثل sum, min, max, avg, count  و countbig را اعمال کنیم. با استفاده از دستور groupby می‌توانیم گروه بندی را انجام دهیم. 
در مثال زیر از تابع sum برای جمع ستون price و از تابع count برای تعداد هر کالا استفاده می‌کنیم و براساس گروه محصولات گروه بندی می‌کنیم و جمع و تعداد هر گروه را نمایش می‌دهیم. 

تصویر اول

در حالتی که از group by استفاده می‌کنیم فیلدهایی که مقابل select قرار می‌گیرند یا باید آن فیلدها هم مقابل group by باشند یا درون توابع تجمعی باشند. 

در مثال زیر کد گروه کالاهایی را برمی‌گرداند که مجموع قیمت‌هایشان بیشتر از 100هزار تومان است. برای اعمال شرط روی توابع تجمعی از دستور Having استفاده می‌کنیم و برای شرط گذاشتن روی یک فیلد از دستور Where استفاده می‌کنیم. 

تصویر دوم

 

در این مثال کد گروه کالاهایی را نمایش می‌دهد که تعداد موجودی آن‌ها بیشتر از 2تا باشد. 

تصویر سوم

 

 در این مثال می‌خواهیم علاوه بر اینکه کد گروه کالا را برمی‌گرداند نام گروه محصولات را هم نمایش دهد. برای اینکار از دستور inner join استفاده می‌کنیم که دو جدول را به یگدیگر پیوند بزند تا نام گروه محصولات را نمایش دهد.

تصویر چهارم

 


امیدواریم که این آموزش، برای شما دوستان درسمنی عزیز مفید باشد، درصورت سوال و یا مشکل می‌توانید به انجمن پرسش و پاسخ مراجعه کنید. پیشنهادات و انتقادات خود را در بخش نظرات برای ما ارسال کنید. 
امید آنکه بیش از پیش موفق و مؤید باشید.

 

انجمن متخصصان پایگاه داده

نظرات دانشجویان

نظر شما در تصمیم دیگران اثرگذار است.

لطفا برای همراهان درسمن و بهتر شدن دوره نظر خود را بنویسید.

برای ارسال نظر نیاز است وارد سایت شوید. در صورت نداشتن حساب کاربری عضو شوید.
ثبت نام

458