Menyusun sebuah BMW?
Dalam latihan ini, Anda akan menjawab pertanyaan berikut: Berapakah total kuantitas yang dibutuhkan Total dari setiap komponen untuk merakit mobil hingga level 3 dalam hierarki?
Tugas Anda adalah membuat CTE construction_Plan untuk melacak level komponen dan menghitung total kuantitas komponen pada field Total. Tabel disusun oleh field PartID, SubPartID, Level, Component, dan Total. Anda harus mempertimbangkan semua komponen mulai dari level 1 hingga level 3.
Latihan ini adalah bagian dari kursus
Kueri Hierarkis dan Rekursif di SQL Server
Petunjuk latihan
- Definisikan
construction_Plandengan field yang diperlukan. - Inisialisasi
TotaldenganQuantitydi elemen jangkarCTE. - Tambahkan
Quantityelemen anak keTotalpada elemen rekursi. - Gunakan
SUM()untuk menjumlahkanTotalpada informasi yang diagregasi berdasarkan ID dalam hierarki.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
-- Define CTE with the fields: PartID, SubPartID, Level, Component, Total
WITH ___ (___, ___, ___, ___, ___) AS (
SELECT
PartID,SubPartID,
0,
Component,
-- Initialize Total
___
FROM partList
WHERE PartID = '1'
UNION ALL
SELECT
CHILD.PartID, CHILD.SubPartID,
PARENT.Level + 1,
CHILD.Component,
-- Increase Total by the quantity of the child element
PARENT.___ + CHILD.___
FROM construction_Plan PARENT, partList CHILD
WHERE CHILD.SubPartID = PARENT.PartID
AND PARENT.Level < 3)
SELECT
PartID, SubPartID,Component,
-- Calculate the sum of total on the aggregated information
___(___)
FROM construction_Plan
GROUP BY PartID, SubPartID, Component
ORDER BY PartID, SubPartID;