PARTITION و ORDER
جزء من قسم الأساسيات في رحلة SQL على Coddy — الدرس 60 من 72.
يمكننا أيضاً دمج PARTITION BY مع ORDER BY. على سبيل المثال، لننظر إلى table1 التالي:
| id | type |
| 132 | t1 |
| 52 | t2 |
| 92 | t1 |
| 154 | t3 |
| 198 | t1 |
SELECT id, type, ROW_NUMBER() OVER (PARTITION BY type ORDER BY id) as row_num
FROM table1سيقوم هذا بترقيم الصفوف بترتيب تصاعدي حسب المعرف (id) لكل نوع:
| id | type | row_num |
| 132 | t1 | 2 |
| 52 | t2 | 1 |
| 92 | t1 | 1 |
| 154 | t3 | 1 |
| 198 | t1 | 3 |
الآن يمتلك المعرف 132 القيمة row_num 2 لأنه أكبر من 92 وأصغر من 198 (من بين جميع صفوف النوع t1).
التحدي
سهلالجداول والأعمدة المتاحة:
<strong>doors</strong>:<strong>id</strong>,<strong>publication_year</strong><strong>doors_specs</strong>:<strong>id</strong>,<strong>country</strong>,<strong>color</strong>
اكتب استعلام SQL لتحليل تسلسل ألوان الأبواب داخل كل بلد، مرتبة حسب سنة النشر. لكل مساحة باب، اعرض:
- البلد
- اللون
- سنة النشر
- رقم يمثل ترتيب الألوان داخل كل بلد بناءً على سنة النشر. قم بتسمية هذا العمود
color_sequence_number
ورقة مرجعية
يمكنك دمج PARTITION BY مع ORDER BY لترقيم الصفوف داخل كل قسم بترتيب معين:
SELECT id, type, ROW_NUMBER() OVER (PARTITION BY type ORDER BY id) as row_num
FROM table1يقوم هذا بترقيم الصفوف بترتيب تصاعدي حسب id داخل كل مجموعة type. يبدأ كل قسم الترقيم من 1 مجددًا.
جرّب بنفسك
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
2الشروط
أساسيات الشروطالكلمة المفتاحية ANDالكلمة المفتاحية ORالكلمة المفتاحية NOTدمج شروط متعددةالأقواسالقيم المنطقية Booleans8الإحصاء
دوال التجميع المدمجة - الجزء الأولدوال التجميع المدمجة - الجزء الثانيالتجميع - الجزء الأولالتجميع - الجزء الثانيالاستعلامات الفرعية - الجزء الأولالاستعلامات الفرعية - الجزء الثانيمراجعة - متجر إجمالي الأرباحمراجعة - متجر السكوترمراجعة - متجر القهوة11دوال النافذة - الجزء الأول
دالة ROW_NUMBERمعيار ORDER BYمعيار PARTITION BYPARTITION و ORDERدوال LEAD و LAGملخص - LEAD و LAGملخص - الصورملخص - الصناديق3تنسيق محدد للنتائج
قيم Nullترتيب النتائج - الجزء الأولترتيب النتائج - الجزء الثانيمراجعة - شركة للأمن السيبرانيتحديد عدد السجلاتمراجعة - مصنع مركبات6تحديات تمهيدية
مراجعة - الانتخابات البرلمانيةمراجعة - اعتقال الشرطة للمجرمينمراجعة - حاوية مشروبات البارمراجعة - هندسة أعمدة جديدة9جداول متعددة
الربط الأساسي - الجزء الأولالربط الأساسي - الجزء الثانيمراجعة - الربط (Join)الربط الذاتي (Self Join)مراجعة - الربط الذاتي (Self Join)الاتحاد (Union)تبسيط الاستعلامات، الكلمة المفتاحية WITHمراجعة - استعلامات WITHمراجعة - مقاول العقارات12Window Functions الجزء الثاني
دوال RANK و DENSE_RANKمراجعة - RANK و DENSE_RANKدالة NTILEدوال التجميعمعيار ROWS و RANGE