เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

สร้างตัวอักษรด้วย recursive CTE

แบบฝึกหัดนี้มีเป้าหมายให้สร้างตัวอักษรภาษาอังกฤษโดยใช้ recursive CTE

ในการแก้โจทย์นี้ ต้องทราบว่าตัวอักษรตั้งแต่ A ถึง Z สามารถแทนได้ด้วยตัวเลขตั้งแต่ 65 ถึง 90 โดย A แทนด้วย 65 และ C แทนด้วย 67 ใช้ฟังก์ชัน char(number) เพื่อแปลงตัวเลขเป็นตัวอักษรที่ตรงกัน

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Hierarchical and Recursive Queries in SQL Server

ดูคอร์ส

คำแนะนำการฝึกหัด

  • กำหนดค่าเริ่มต้นของ number_of_letter เป็นตัวเลขที่แทนตัวอักษร A
  • เพิ่มค่า number_of_letter ทีละ 1 ในแต่ละขั้นตอน และกำหนดขีดจำกัดไว้ที่ 90 ซึ่งเป็นค่าของ Z
  • เลือก recursive member จาก CTE ที่กำหนดไว้

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

WITH alphabet AS (
	SELECT 
  		-- Initialize letter to A
	    ___ AS number_of_letter
	-- Statement to combine the anchor and the recursive query
  	UNION ALL
	SELECT 
  		-- Add 1 each iteration
	    ___ + ___
  	-- Select from the defined CTE alphabet
	FROM ___
  	-- Limit the alphabet to A-Z
  	WHERE ___ < ___)
    
SELECT char(number_of_letter)
FROM alphabet;
แก้ไขและรันโค้ด