با سلام خدمت کاربران گرامی سایت پی وی لرن و کاربرانی که علاقمند به یادگیری دوره آموزش تی اس کیو ال T-SQL هستند. در جلسه گذشته آموزش کار با ORDER BY clause در تی اس کیو ال را به علاقمندان این دوره ارائه کردیم و کاربرد های آن را به شما معرفی نمودیم و فهمیدیم که از MS SQL Server ORDER BY clause برای مرتب سازی داده ها در جهت صعودی یا نزولی بر اساس یک یا چند ستون استفاده می شود. در ادامه آموزش clause ها آموزش کار با GROUP BY clause در تی اس کیو ال ارائه خواهیم کرد.
از SQL Server GROUP BY clause با کمک SELECT statement به مرتب کردن داده های یکسان گروه ها می پردازد.
GROUP BY clause در SELECT statement به پیروی از WHERE clause می پردازد و تبدیل به پیش شرط ORDER BY clause می شود.
در ادامه می توانید سینتکس اصلی GROUP BY clause را ببینید.
GROUP BY clause شرایط موجود در WHERE clause را دنبال می کند و اگر مورد استفاده قرار بگیرد بایستی پیش شرط ORDER BY clause باشد.
1 2 3 4 5 | SELECT column1, column2 FROM table_name WHERE [ conditions ] GROUP BY column1, column2 ORDER BY column1, column2 |
CUSTOMERS table زیر را با رکوردهای زیر در نظر بگیرید :
1 2 3 4 5 6 7 8 | ID NAME AGE ADDRESS SALARY 1 Ramesh 32 Ahmedabad 2000.00 2 Khilan 25 Delhi 1500.00 3 kaushik 23 Kota 2000.00 4 Chaitali 25 Mumbai 6500.00 5 Hardik 27 Bhopal 8500.00 6 Komal 22 MP 4500.00 7 Muffy 24 Indore 10000.00 |
اگر می خواهید کل مبلغ حقوق و دستمزد را برای هر مشتری بدانید، در آن صورت GROUP BY query به صورت زیر خواهد بود.
1 2 | SELECT NAME, SUM(SALARY) as [sum of salary] FROM CUSTOMERS GROUP BY NAME; |
دستور بالا خروجی زیر را ایجاد خواهد کرد.
1 2 3 4 5 6 7 8 | NAME sum of salary Chaitali 6500.00 Hardik 8500.00 kaushik 2000.00 Khilan 1500.00 Komal 4500.00 Muffy 10000.00 Ramesh 2000.00 |
CUSTOMERS table زیر با رکورد های موجود در آن دارای نام های تکراری ای به شکل زیر است.
1 2 3 4 5 6 7 8 | ID NAME AGE ADDRESS SALARY 1 Ramesh 32 Ahmedabad 2000.00 2 Khilan 25 Delhi 1500.00 3 kaushik 23 Kota 2000.00 4 Chaitali 25 Mumbai 6500.00 5 Hardik 27 Bhopal 8500.00 6 Komal 22 MP 4500.00 7 Muffy 24 Indore 10000.00 |
اگر می خواهید کل مبلغ حقوق و دستمزد را برای هر مشتری بدانید، در آن صورت GROUP BY query به صورت زیر خواهد بود.
1 2 | SELECT NAME, SUM(SALARY) as [sum of salary] FROM CUSTOMERS GROUP BY NAME |
دستور بالا خروجی زیر را ایجاد خواهد کرد.
1 2 3 4 5 6 | NAME sum of salary Hardik 8500.00 kaushik 8500.00 Komal 4500.00 Muffy 10000.00 Ramesh 3500.00 |
در این جلسه با آموزش کار با GROUP BY clause در تی اس کیو ال همراه شما بودیم.
در جلسه بعد به DISTINCT Clause خواهیم پرداخت.
با پی وی لرن همراه باشید.