Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Zapytanie w drzewie serwera SQL

WITH  OrganizationsH (OrgParentFK, OrgPK, OrgName, level, Label) AS
(
    SELECT OrgParentFK, OrgPK, OrgName, 0, CAST(OrgName AS VARCHAR(MAX)) As Label
    FROM Organizations
    WHERE OrgParentFK IS NULL
    UNION ALL
    SELECT o.OrgParentFK, o.OrgPK, o.OrgName, level + 1,  CAST(h.Label + '/' + o.OrgName  VARCHAR(MAX)) As Label
    FROM Organizations o JOIN OrganizationsH h ON o.OrgParentFK = h.OrgPK
)

SELECT OrgParentFK, OrgPK, OrgName, level, Label
FROM OrganizationsH
WHERE OrgPK = 5

h/t do marc_s



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nie jestem pewien, co jest nie tak, kiedy deklaruję te zmienne w SQL

  2. Unikanie zakleszczeń SQL dzięki dostrajaniu zapytań:porady Brenta Ozara

  3. Uruchom SERVERPROPERTY() na połączonym serwerze w SQL Server

  4. Automatyczne usuwanie daty/godziny rekordu MSSQL

  5. Jak NTILE() działa w SQL Server