مراجعة - استعلامات WITH
جزء من قسم الأساسيات في رحلة SQL على Coddy. الدرس 50 من 72.
التحدي
سهلالجداول والأعمدة المتاحة:
<b>devices_specs</b>:<b>device_id</b>,<b>width</b>,<b>height</b>,<b>num_features</b>,<b>opinion</b><b>devices_score</b>:<b>device_id</b>,<b>score</b>
تقاس جودة الـ device بواسطة (width/height)*num_features.
نريد العثور على جميع الأجهزة المبالغ في تقييمها. قم بجلب جميع الـ devices التي تكون قيمة الـ opinion للـ device فيها أكبر من الـ average quality وتكون قيمة الـ score للـ device أقل من الـ average quality. أرجع فقط الـ device_id.
لحل هذه المسألة، استخدم بند WITH لإنشاء استعلام فرعي يحسب الـ average quality وأعد استخدامه في الاستعلام الرئيسي.
جرّب بنفسك
-- الخطوة 1: سمِّ مجموعة نتائج مؤقتة تحتوي على قيمة متوسطة واحدة
WITH avg_quality AS (
SELECT ____ AS avg_q
FROM devices_specs
)
-- الخطوة 2: اجمع جدولي الأجهزة معًا، ثم اربط مجموعة النتائج المؤقتة
SELECT dsp.device_id
FROM devices_specs dsp
INNER JOIN devices_score dsc ON ____
INNER JOIN avg_quality aq
-- الخطوة 3: احتفظ بالأجهزة التي تقع على جانبين متقابلين من ذلك المتوسط
WHERE ____جميع دروس الأساسيات
2الشروط
أساسيات الشروطالكلمة المفتاحية ANDالكلمة المفتاحية ORالكلمة المفتاحية NOTدمج شروط متعددةالأقواسالقيم المنطقية Booleans3تنسيق محدد للنتائج
قيم Nullترتيب النتائج - الجزء الأولترتيب النتائج - الجزء الثانيمراجعة - شركة للأمن السيبرانيتحديد عدد السجلاتمراجعة - مصنع مركبات6تحديات تمهيدية
مراجعة - الانتخابات البرلمانيةمراجعة - اعتقال الشرطة للمجرمينمراجعة - حاوية مشروبات البارمراجعة - هندسة أعمدة جديدة9جداول متعددة
الربط الأساسي - الجزء الأولالربط الأساسي - الجزء الثانيمراجعة - الربط (Join)الربط الذاتي (Self Join)مراجعة - الربط الذاتي (Self Join)الاتحاد (Union)تبسيط الاستعلامات، الكلمة المفتاحية WITHمراجعة - استعلامات WITHمراجعة - مقاول العقارات12Window Functions الجزء الثاني
دوال RANK و DENSE_RANKمراجعة - RANK و DENSE_RANKدالة NTILEدوال التجميعمعيار ROWS و RANGEتدرّب بنفسك: Playground لـ SQL