การกรองข้อมูลตั้งแต่ต้น
ตอนนี้ Pissa ต้องการความช่วยเหลือในการเพิ่มประสิทธิภาพคิวรีในฐานข้อมูลของพวกเขา โดยสงสัยว่าคิวรีที่มีอยู่อาจทำงานได้ไม่มีประสิทธิภาพพอและใช้เวลานานเกินไป
เป้าหมายคือดึงข้อมูลออเดอร์ที่เกิดขึ้นหลังวันที่ 1 พฤศจิกายน 2015 และแสดงเฉพาะพิซซ่าในหมวด 'Veggie' เท่านั้น
เติมโค้ด SQL ที่กำหนดให้สมบูรณ์โดยใช้เทคนิคการกรองข้อมูลตั้งแต่ต้น
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Snowflake SQL เบื้องต้น
คำแนะนำการฝึกหัด
- เติม CTE
filtered_ordersให้สมบูรณ์ โดยกรองเฉพาะออเดอร์ที่เกิดขึ้นหลังวันที่2015-11-01 - เติม CTE
filtered_pizza_typeให้สมบูรณ์ โดยกรองเฉพาะพิซซ่าในหมวด'Veggie' - ดึงข้อมูลจาก CTE
filtered_orders - JOIN CTE
filtered_pizza_typeโดยอ้างอิงคอลัมน์pizza_type_idด้วยคลอสON
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
WITH filtered_orders AS (
SELECT order_id, order_date
FROM orders
-- Filter records where order_date is greater than November 1, 2015
___
)
, filtered_pizza_type AS (
SELECT name, pizza_type_id
FROM pizza_type
-- Filter the pizzas which are in the Veggie category
___
)
SELECT fo.order_id, fo.order_date, fpt.name, od.quantity
-- Get the details from filtered_orders CTE
FROM ___ AS fo
JOIN order_details AS od ON fo.order_id = od.order_id
JOIN pizzas AS p ON od.pizza_id = p.pizza_id
-- JOIN the filtered_pizza_type CTE on pizza_type_id
___ ___ AS fpt ON p.pizza_type_id = ___.___