BaşlayınÜcretsiz Başlayın

Bir arabanın parça listesi (bill of material) oluştur

Bu egzersizde şu soruyu yanıtlayacaksın: Bir arabayı oluşturan farklı bileşenlerin seviyeleri nedir?

Örneğin, bir SUV (1. seviye), bir motordan (2. seviye) ve bir gövdeden (2. seviye) oluşur; gövde ise bir kapıdan (3. seviye) ve bir kaputtan (3. seviye) oluşur.

Görevin, partList tablosunun hiyerarşi seviyesini almak için bir sorgu oluşturmak. construction_Plan adlı CTE'yi oluşturmalı ve bir bileşenin hiyerarşideki konumunu takip etmelisin. Tüm bileşenleri 1. seviyeden başlayıp 2. seviyeye kadar takip et.

Bu egzersiz

SQL Server'da Hiyerarşik ve Özyinelemeli Sorgular

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • construction_Plan'i şu alanlarla tanımla: PartID, SubPartID, Title, Component ve Level.
  • Level alanını 1 olarak başlat.
  • Her yineleme adımında Level değerini 1 artır.
  • Adım sayısını (Level) 2'den küçük olacak şekilde sınırla.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

-- 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;
Kodu Düzenle ve Çalıştır