1. 学习
  2. /
  3. 课程
  4. /
  5. Truy vấn phân cấp và đệ quy trong SQL Server

Connected

练习

Cách truy vấn giai thừa của 6 bằng đệ quy

Ở bài trước, bạn đã truy vấn giai thừa 5! bằng cách lặp. Giờ bạn sẽ tính 6! theo cách đệ quy. Ta chia nhỏ bài toán thành các bài toán cùng kiểu để định nghĩa giai thừa n! một cách đệ quy. Có thể dùng định nghĩa sau:

  • 0! = 1 khi step = 0
  • (n+1)! = n! * (step+1) khi step > 0

Với định nghĩa đơn giản này, bạn có thể tính giai thừa của mọi số. Trong bài này, n! được biểu diễn bằng factorial.

Bạn sẽ tận dụng định nghĩa trên với sự hỗ trợ của CTE đệ quy.

说明

100 XP
  • Khởi tạo các trường factorial và step bằng 1.
  • Tính phần đệ quy với factorial * (step + 1).
  • Dừng quá trình đệ quy khi giá trị lặp hiện tại nhỏ hơn số giai thừa mục tiêu.