Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Bagaimana cara mendapatkan semua anak dari orang tua dan kemudian anak-anak mereka menggunakan rekursi dalam kueri

DECLARE @Id int = your_UnitId
;WITH cte AS 
 (
  SELECT a.Id, a.parentId, a.name
  FROM customer a
  WHERE Id = @Id
  UNION ALL
  SELECT a.Id, a.parentid, a.Name
  FROM customer a JOIN cte c ON a.parentId = c.id
  )
  SELECT parentId, Id, name
  FROM cte

Demo di SQLFiddle



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mengapa kolom TEXT hanya mengembalikan 4096 byte?

  2. Encoding SQL_Latin1_General_CP1_CI_AS ke dalam UTF-8

  3. SQL Server Latch dan indikasi masalah kinerjanya

  4. Menerapkan bidang rentang tanggal unik di SQL Server 2008

  5. SQL Server dan Kerentanan Spectre/Meltdown