Kategorie szkoleń | Egzaminy | Kontakt
  • 1
  • 2
  • 229

Odpowiedź (1)

  • 5

Oficjalnie baza danych Oracle nie obsługuje wyrażeń CTE. Niemniej.zawsze jest jakieś "ale".;)

Wyrażenia CTE działają w Oracle DB! Niestety, nie do końca zgodnie ze standardem.

Nie jest obsługiwana klauzula RECURSIVE. Pomimo braku implementacji obsługi klauzuli RECURSIVE, eksperyment wykazuje, że każde wyrażenie CTE w Oracle obsługuje wywołania rekursywne automatycznie!

 Przykład:

 

 

with zapytanie (n) as (
     select 1 from dual
     union all
     select n+1 from zapytanie where n < 100
) select * from zapytanie;

 

 

Mimo, że trudno w tym miejscu zrozumieć politykę vendora, to teoretycznie nie supportowana składnia działa.

 


  • Odpowiedział
  • @ | 01.04.2014
  • TRENER MODERATOR ALTKOM AKADEMII