sql >> Database teknologi >  >> RDS >> Oracle

Rekursiv SQL og information på forskellige niveauer

Ja, det er muligt at bruge CONNECT_BY_ROOT operatør. For eksempel, hvis du ville have cab af forælderen ville din forespørgsel være:

select connect_by_root cab
      , level, cab, niveau, entite, entite_parent, libelle
   from my_table
  where niveau = 2
  start with cab = 'XXX'
connect by prior entite_parent = entite

Du skal bruge en ny operator for hver kolonne, du vil vælge. Du ikke få information fra et "andet" niveau af rekursivitet ved at bruge denne operator, kun fra roden. Hvis du vil have mere, skal du bruge rekursiv subquery factoring.




  1. Er der en indbygget funktion der kan konvertere tal til ord i sql server

  2. Databaseresultater som objekter eller arrays?

  3. mysql union forskelligt antal kolonner

  4. Postgres unikke begrænsning vs indeks