Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

دمج جميع المنتجات

جزء من قسم الأساسيات في رحلة SQL على Coddy. الدرس 55 من 72.

challenge icon

التحدي

متوسط

الجداول والأعمدة المتاحة:

  • <strong>enom_gilpane</strong>: <strong>part_id</strong>, <strong>rpm</strong>, <strong>watt</strong>, <strong>size</strong>
  • <strong>castle_loctus</strong>: <strong>part_id</strong>, <strong>rpm</strong>, <strong>watt</strong>, <strong>size</strong>
  • <strong>honpan_bilopsa</strong>: <strong>part_id</strong>, <strong>rpm</strong>, <strong>watt</strong>, <strong>size</strong>
  • <strong>yurnol_qoltam</strong>: <strong>part_id</strong>, <strong>rpm</strong>, <strong>watt</strong>, <strong>size</strong>

الآن قم بحساب الـ quality الـ same لجميع الـ product (كل جدول يمثل product) وقم بدمجها جميعًا باستخدام UNION ALL:

quality_table as (
    SELECT * FROM filtered_quality_1
    UNION ALL
    SELECT * FROM filtered_quality_2
    UNION ALL 
    SELECT * FROM filtered_quality_3
    UNION ALL 
    SELECT * FROM filtered_quality_4
)

قم بإرجاع part_id و quality

جرّب بنفسك

-- كتلة المنتج الأولى منجزة لك، منقولة من الدرس السابق
WITH filtered_enom_gilpane_quality as (
    WITH enom_gilpane_quality as (
        SELECT part_id, ((rpm * watt) / size) as quality
        FROM (
            SELECT part_id, rpm, watt + (select avg(watt) from enom_gilpane) as watt, size
            FROM enom_gilpane
        )
    )

    SELECT *
    FROM enom_gilpane_quality
    WHERE quality > (select avg(quality) from enom_gilpane_quality)
),
-- ابنِ نفس الكتلة لكل من جداول المنتجات الثلاثة أدناه
filtered_castle_loctus_quality as (
    ____
),
filtered_honpan_bilopsa_quality as (
    ____
),
filtered_yurnol_qoltam_quality as (
    ____
),
-- كدّس الكتل الأربع فوق بعضها البعض مع الإبقاء على كل صف
quality_table as (
    SELECT * FROM filtered_enom_gilpane_quality
    ____
)

SELECT ____
FROM quality_table

جميع دروس الأساسيات

تدرّب بنفسك: Playground لـ SQL