การใช้ Jinja loop กับ SQL ที่ซ้ำกัน 1
เมื่อกลับมาดูไฟล์ customers.sql อีกครั้ง คุณพบว่ามีการใช้คำสั่ง CASE WHEN ... ซ้ำกันหลายครั้งเพื่อสร้างคอลัมน์ที่นับจำนวน orders ตามสถานะ ทำให้โมเดล data mart ยาวและซับซ้อนมากขึ้น
ในขั้นต้น คุณได้แยก CTE นั้นออกเป็น intermediary mart model ชื่อ int_customers__pivoted.sql แล้วย้าย logic ไปไว้ที่นั่น
แต่ยิ่งดูก็ยิ่งรู้สึกว่า intermediate model นี้น่าจะได้ประโยชน์จากการใช้ Jinja loop เพื่อให้รองรับการขยายได้ดีขึ้นและลดโค้ดที่ซ้ำซ้อน
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
กรณีศึกษา: การสร้าง Data Model สำหรับ E-Commerce ด้วย dbt
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำจริง
เปลี่ยนทฤษฎีให้เป็นการลงมือทำด้วยแบบฝึกหัดเชิงโต้ตอบหนึ่งในของเรา
เริ่มแบบฝึกหัด