عند وجود قدر كبير من البيانات ، غالبًا ما نرى إمكانية معالجة البيانات وفقًا لمتطلباتنا. عبارة GROUP BY هي واحدة من هذه ، تستخدم لتجميع البيانات بناءً على عدد قليل من الأعمدة أو على الشروط. في هذه المقالة حول عبارة SQL GROUP BY ، سأناقش بعض الطرق لاستخدام عبارات GROUP BY في التسلسل التالي:
قبل أن ننتقل إلى الأمثلة حول كيفية استخدام جملة GROUP BY ، دعنا نفهم ما هو GROUP BY في SQL وصياغتها.
جملة SQL GROUP BY
تستخدم هذه العبارة لتجميع السجلات التي لها نفس القيم. تُستخدم عبارة GROUP BY غالبًا مع الدالات التجميعية لتجميع النتائج حسب عمود واحد أو أكثر.بصرف النظر عن ذلك ، تُستخدم عبارة GROUP BY أيضًا مع بند HAVING و لتجميع مجموعة النتائج بناءً على الشروط.
مجموعة SQL حسب النحو
حدد العمود 1 ، العمود 2 ، ... ، العمود من اسم الجدول حيث الحالة المجموعة حسب العمود الاسم (الأسماء) الترتيب حسب اسم العمود (الأسماء)
هنا ، يمكنك إضافة وظائف التجميع قبل أسماء الأعمدة ، وكذلك عبارة HAVING في نهاية العبارة لذكر شرط.بعد ذلك ، في هذه المقالة حول SQL GROUP BY ، دعنا نفهم كيفية تنفيذ هذا البيان.
أمثلة:
لفهمك بشكل أفضل ، لقد قسمت الأمثلة إلى الأقسام التالية:
سأنظر في الجدول التالي لأشرح لك الأمثلة:
إمبيد | إمبنامي | البريد الإلكتروني | رقم الهاتف | راتب | مدينة |
واحد | نيدهي | nidhi@sample.com | 9955669999 | 50000 | مومباي |
2 | أناي | anay@sample.com | 9875679861 | 55000 | وضع |
3 | راهول | rahul@sample.com | 9876543212 | 35000 | دلهي |
4 | سونيا | sonia@sample.com | 9876543234 | 35000 | دلهي |
5 | عكاش | akash@sample.com | 9866865686 | 25000 | مومباي |
دعونا نلقي نظرة على كل واحد منهم.
استخدم SQL GROUP BY في عمود واحد
مثال:
اكتب استعلامًا لاسترداد عدد الموظفين في كل مدينة.
حدد العدد (EmpID) ، المدينة من مجموعة الموظفين حسب المدينة
انتاج:
سترى الناتج التالي:
عدد (EmpID) | مدينة |
2 | دلهي |
2 | مومباي |
واحد | وضع |
استخدم SQL GROUP BY في أعمدة متعددة
مثال:
اكتب استعلامًا لاسترداد عدد الموظفين الذين لديهم رواتب مختلفة في كل مدينة.
حدد المدينة ، الراتب ، العدد (*) من مجموعة الموظفين حسب المدينة ، الراتب
انتاج:
سيتضمن الجدول البيانات التالية:
مدينة | راتب | العدد (*) |
دلهي | 35000 | 2 |
مومباي | 25000 | واحد |
مومباي | 50000 | واحد |
وضع | 55000 | واحد |
استخدم SQL GROUP BY مع ORDER BY
عندما نستخدم جملة SQL GROUP BY مع الامتداد عبارة ORDER BY ، يتم فرز القيم إما بترتيب تصاعدي أو تنازلي.
مثال:
اكتب استعلامًا لاسترداد عدد الموظفين في كل مدينة ، مرتبة بترتيب تنازلي.
حدد العدد (الإمبيد) ، المدينة من الموظفين المجموعة حسب المدينة الترتيب حسب العدد (التمكين) تنازليًا
انتاج:
سيتضمن الجدول البيانات التالية:
عدد (EmpID) | مدينة |
2 | دلهي |
2 | مومباي |
واحد | وضع |
استخدم SQL GROUP BY مع عبارة HAVING
يتم استخدام عبارة SQL GROUP BY مع عبارة 'HAVING' لذكر الشروط في المجموعات.أيضًا ، نظرًا لأنه لا يمكننا استخدام الوظائف الإجمالية مع عبارة WHERE ، يتعين علينا استخدام بند 'HAVING' لاستخدام الوظائف الإجمالية مع GROUP BY.
مثال:
اكتب استعلامًا لاسترداد عدد الموظفين في كل مدينة ، الذين لديهم رواتب> 15000
حدد العدد (EmpID) ، المدينة من مجموعة الموظفين حسب المدينة التي تحصل على رواتب> 15000
انتاج:
نظرًا لأن جميع السجلات في جدول الموظف لها راتب> 15000 ، فسنرى الجدول التالي كإخراج:
php إنشاء مصفوفة من السلسلة
عدد (EmpID) | مدينة |
2 | دلهي |
2 | مومباي |
واحد | وضع |
استخدم GROUP BY مع JOINS
هي SQL الجمل المستخدمة لدمج الصفوف من جدولين أو أكثر ، بناءً على عمود مرتبط بين تلك الجداول. يمكننا استخدام جملة SQL GROUP BY لتجميع مجموعة النتائج بناءً على عمود / أعمدة.ضع في اعتبارك الجداول أدناه لتنفيذ عبارات JOIN مع عبارة SQL GROUP BY.
جدول المشاريع:
معرف المشروع | إمبيد | معرف العميل | تاريخ المشروع |
2. 3. 4. 5 | واحد | 4 | 01-26-2019 |
9876 | 2 | 5 | 02-28-2019 |
3456 | 3 | 6 | 03-12-2019 |
جدول العملاء:
معرف العميل | اسم العميل |
4 | سانجانا |
5 | روهان |
6 | آرون |
مثال
اكتب استعلامًا لسرد عدد المشاريع المطلوبة من قبل كل عميل:
حدد Clients.ClientName ، COUNT (Projects.ProjectID) كالمشروعات المطلوبة من المشاريع LEFT JOIN Clients ON Projects.ProjectID = Clients.ProjectID GROUP BY ClientName
انتاج:
سيتضمن الجدول البيانات التالية:
اسم العميل | المشاريع المطلوبة |
آرون | واحد |
روهان | واحد |
سانجانا | واحد |
مع ذلك ، نصل إلى نهاية مقالة SQL GROUP BY. ألق نظرة على هذا بواسطة Edureka ، شركة تعليمية موثوقة عبر الإنترنت لها شبكة أو أكثر من 250000 متعلم راضٍ منتشرين في جميع أنحاء العالم تدربك هذه الدورة على المفاهيم الأساسية والأدوات والتقنيات المتقدمة لإدارة البيانات وإدارة قاعدة بيانات MySQL. يتضمن التعلم العملي على مفاهيم مثل MySQL Workbench و MySQL Server ونمذجة البيانات وموصل MySQL وتصميم قاعدة البيانات وسطر أوامر MySQL ووظائف MySQL وما إلى ذلك. إدارة البيانات.
لديك سؤال لنا؟ يرجى ذكر ذلك في قسم التعليقات بمقال 'SQL GROUP BY' وسنعاود الاتصال بك في أقرب وقت ممكن.