sql >> Databasteknik >  >> RDS >> Oracle

SQL connect by för många rader

Uppdatera

När du har sett din uppdatering behöver du bara släppa START WITH.

Avsluta uppdatering

CONNECT_BY_ROOT är vad du letar efter

Detta uttalande

SELECT distinct RootBoss, Person FROM (
with employee  as 
(
  Select 1 person , null boss from Dual
  UNION Select 2 , 1 from dual
  UNION Select 3 , 2 from dual
)
SELECT CONNECT_BY_ROOT boss RootBoss, person
FROM employee connect_by

  connect by prior person = boss
  ORDER BY person

  ) t
WHERE ROOTBOSS is not null
ORDER BY
RootBoss, Person

Utgångar

ROOTBOSS               PERSON                 
---------------------- ---------------------- 
1                      2                      
1                      3                      
2                      3        

Att lägga till SUMMER och GRUPPER är ganska enkelt




  1. mysql utlöser simulerande påståenden

  2. visar länk i php

  3. Uppdatera kolumn baserat på matchande värden i annan tabell i mysql

  4. Deklarera och ställa in variabler i ett urvalsutdrag