ПочатиПочніть безкоштовно

Створіть специфікацію складу автомобіля (bill of materials)

У цій вправі ви відповісте на запитання: Які рівні мають різні компоненти, з яких складається автомобіль?

Наприклад, SUV (1-й рівень) складається з двигуна (2-й рівень) і кузова (2-й рівень), а кузов складається з дверей (3-й рівень) та капота (3-й рівень).

Ваше завдання — створити запит, щоб отримати рівень ієрархії таблиці partList. Вам потрібно створити CTE construction_Plan і відстежувати позицію компонента в ієрархії. Відстежте всі компоненти, починаючи з рівня 1 і до рівня 2.

Ця вправа є частиною курсу

Ієрархічні та рекурсивні запити в SQL Server

Переглянути курс

Інструкції до вправи

  • Визначте construction_Plan з полями: PartID, SubPartID, Title, Component і Level.
  • Ініціалізуйте поле Level значенням 1.
  • Збільшуйте Level на 1 на кожному кроці рекурсії.
  • Обмежте кількість кроків (Level) значенням менше ніж 2.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

-- Define CTE with the fields: PartID, SubPartID, Title, Component, Level
___ construction_Plan (___, ___,___, ___, ___) AS (
	SELECT 
  		PartID,
  		SubPartID,
  		Title,
  		Component,
  		-- Initialize the field Level
  		___
	FROM partList
	WHERE PartID = '1'
	UNION ALL
	SELECT 
		CHILD.PartID, 
  		CHILD.SubPartID,
  		CHILD.Title,
  		CHILD.Component,
  		-- Increment the field Level each recursion step
  		PARENT.___ + ___
	FROM construction_Plan PARENT, partList CHILD
  	WHERE CHILD.SubPartID = PARENT.PartID
  	-- Limit the number of iterations to Level < 2
	  AND PARENT.___ < ___)

SELECT DISTINCT PartID, SubPartID, Title, Component, Level
FROM construction_Plan
ORDER BY PartID, SubPartID, Level;
Редагувати та запускати код