Menu
CoddyTech

Kết hợp tất cả sản phẩm

Thuộc phần Kiến thức cơ bản trong hành trình SQL của Coddy. Bài học 55 trên 72.

challenge icon

Thử thách

Trung bình

Các bảng và cột hiện có:

  • enom_gilpane: part_id, rpm, watt, size
  • castle_loctus: part_id, rpm, watt, size
  • honpan_bilopsa: part_id, rpm, watt, size
  • yurnol_qoltam: part_id, rpm, watt, size

Bây giờ, hãy tính chất lượng tương tự cho tất cả sản phẩm (mỗi bảng là một sản phẩm) rồi kết hợp tất cả bằng 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
)

Trả về part_id và quality

Tự làm thử

-- Khối lệnh (block) cho sản phẩm đầu tiên đã có sẵn từ bài học trước.
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)
),
-- Tạo khối lệnh tương tự cho từng bảng trong ba bảng sản phẩm bên dưới.
filtered_castle_loctus_quality as (
    ____
),
filtered_honpan_bilopsa_quality as (
    ____
),
filtered_yurnol_qoltam_quality as (
    ____
),
-- Ghép bốn khối lệnh theo chiều dọc, giữ lại mọi hàng.
quality_table as (
    SELECT * FROM filtered_enom_gilpane_quality
    ____
)

SELECT ____
FROM quality_table

Tất cả bài học trong Kiến thức cơ bản

Tự luyện tập: Playground SQL