แก้โจทย์คณิตศาสตร์แบบเรียกซ้ำ

Hierarchical and Recursive Queries in SQL Server

Jasmin Ludolf

Content Developer

โจทย์คณิตศาสตร์สองข้อ

  1. นับจำนวนแบบเรียกซ้ำ
  2. คำนวณผลรวมของเลขยกกำลัง

องค์ประกอบ

  • ขั้นตอนเริ่มต้น
  • ขั้นตอนเรียกซ้ำ

Pseudo code:

  • คำอธิบายหลักการทำงานในระดับสูงแบบไม่เป็นทางการ
  • ออกแบบให้มนุษย์อ่าน ไม่ใช่เครื่องอ่าน

กระดานคณิตศาสตร์

Hierarchical and Recursive Queries in SQL Server

การนับจำนวน

นิยามแบบเรียกซ้ำ:

number = 1 for iteration = 1,
number = number +1 for iteration > 1
termination condition: number < 4

Pseudo code:

WITH recursion AS ( 
    SELECT
          -- Initial query
       number = 1
    UNION ALL 
    SELECT
        -- Recursive query
       number = number + 1
    FROM numbers 
    -- Termination condition
    WHERE number < 4)
-- Statement on CTE 
SELECT * FROM recursion;
-- Final iteration
1+1+1+1 = 4
Hierarchical and Recursive Queries in SQL Server

ผลรวมของเลขยกกำลัง

นิยามแบบเรียกซ้ำ:

number = 1 for iteration = 1
number = number + iteration^iteration for iteration > 1

Pseudo code

WITH recursion AS (
      number = 1 -- Initial query
      UNION ALL
    number = number + iteration^iteration -- Recursive query
    WHERE termination_condition)
SELECT * FROM recursion;
-- Three iterations
1 + 2^2 + 3^3 = 32
Hierarchical and Recursive Queries in SQL Server

มาฝึกกันเถอะ!

Hierarchical and Recursive Queries in SQL Server

Preparing Video For Download...