sql >> Database teknologi >  >> RDS >> Sqlserver

Vælg alle forældre eller børn i samme tabelrelation SQL Server

Jeg har mødt dette problem, jeg løste problemet på denne måde

 --all  "parent + grandparent + etc" @childID Replaced with the ID you need

with tbParent as
(
   select * from Elem where [KEY][email protected]
   union all
   select Elem.* from Elem  join tbParent  on Elem.[KEY]=tbParent.PARENT_KEY
)
 SELECT * FROM  tbParent
 --all "sons + grandsons + etc" @parentID Replaced with the ID you need

with tbsons as
(
  select * from Elem where [KEY][email protected]
  union all
  select Elem.* from Elem  join tbsons  on Elem.PARENT_KEY=tbsons.[KEY]
)
SELECT * FROM tbsons

PS. Mit engelsk er ikke godt.



  1. at vælge et specifikt tal som kolonneværdi i forespørgslen

  2. Standard rækkefølge for udvalgt forespørgsel i oracle

  3. SQL Server erstat, fjern alt efter et bestemt tegn

  4. Hvordan opdaterer man tabel, når visningen opdateres?