Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Truy vấn đệ quy SQL Server

Xem xét việc sử dụng cái được gọi là CTE (biểu thức bảng chung) (Tham khảo tài liệu MSDN):

;with cteAppointments as (
 select AppointmentID, PersonID, PrevAppointmentID
     from Appointments
     where PrevAppointmentID is null
 union all
 select a.AppointmentID, a.PersonID, a.PrevAppointmentID
     from Appointments a
         inner join cteAppointments c
             on a.PrevAppointmentID = c.AppointmentID
)
select AppointmentID, PrevAppointmentID
    from cteAppointments
    where PersonID = xxx



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nhiều hàng cho một giá trị được phân tách bằng dấu phẩy trong Sql Server

  2. Sao lưu cơ sở dữ liệu trong SQL Server 2017

  3. Trả lại nhiều bảng từ một thủ tục được lưu trữ

  4. TDS Server - Sử dụng các câu lệnh Transact-SQL (T-SQL) để làm việc với dữ liệu Salesforce trong SQL Server

  5. Chèn trình kích hoạt Cập nhật cách xác định xem chèn hoặc cập nhật