@ugotowany_kamien:
Nie wiem jaki cel jest tej funkcji?
Jej działanie ma polegać na tym iż podasz jej identyfikator zespołu ? i co masz dostać w wyniku jej działania? Kilka wierszy ?
Funkcja może przyjąć generalnie jedną wartość, która może ew być tablicą. Nie ma możliwości zwrócenia za pomocą funkcji kilku wierszy.
Zapytanie zadziałało, ale w przypadku funkcji jedyną możliwością jest zwrócenie wyniku wielowierszowego na standardowe wyjście, ale to wtedy nie
  • Odpowiedz
Którą wersję Linux Oracle zainstalować na maszynie wirtualnej pod bazę danych? Chodzi mi np. o stabilność, dokumentację techniczną, itd..
#linux #oracle #informatyka
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Kojarzy ktoś w Oraclu jak zrobić takie coś:

Mamy tabelę z jedną hierarchiczną kolumną na zasadzie rodzic - dziecko z referencją do tej samej tabeli (czyli drzewko). I teraz pytanie: Jak napisać zapytanie które zaznacza rekord, który jest dzieckiem i dołącza do niego kolumny z jego roota(nie mylić z rodzicem). Podejrzewam, że jakaś kombinacja z joinem i connect by prior, ale głowa mi paruje i nie wiem.

#sql #oracle
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Tilannon: Ok bo jeszcze parent. To spróbuj tak:

SELECT PBF.ID CHILD_ID, PBF.ZLACZENIE_ID, PBF_PARENT.ID, CONNECT_BY_ROOT PBF.ID ROOT_ID
FROM TABELA PBF
LEFT OUTER JOIN TABELA PBF_PARENT ON
PBF_PARENT.ID
  • Odpowiedz
Pytanie będzie dotyczyło dwóch zapytań mających zwrócić teoretycznie ( ͡° ͜ʖ ͡°) taki sam wynik. Chodzi o to, które będzie bardziej wydajne, czyli które szybciej się wykona.

Załóżmy, że mamy zapytanie A, w skład którego wchodzi podzapytanie B oraz to zapytanie A czerpie jeszcze dane z jakiejś tabeli, nazwijmy ją C

Wersja 1:
Po klauzuli FROM zapytania głównego (A) wstawiamy podzapytanie B, które następnie łączymy JOINEM z tabelą C na podstawie jakiś identyfikator id
  • 20
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@TomaszWKS: Tak na szybko:
1) Po co ci DISTINCT jeśli masz GROUP BY?
2) Czy GROUP BY jest poprawny? Grupujesz tylko po jednej kolumnie a nie wiem jak sobie radzi Oracle z functional dependencies (jeśli działa to jest poprawny to nie MySQL)
3) Czy Oracle przekształca AND UPPER(p.polistatus) NOT IN 'Z' do p.polistatus NOT IN ('z','Z')?

Poza tym to wszystko zależy od wróżek i fazy księżyca ale generalnie
  • Odpowiedz
@plushy: Masz rację, pierwsze wykonuje się jako index only scan, drugie jako index scan.

nadal pozostaje kwestia dobrych praktyk

W tym całkowicie się zgadzam, jeśli nie potrzebujemy funkcjonalności pomijania NULLi to zawsze powinno się używać 1 lub * (zależnie co jest już używane w projekcie).
  • Odpowiedz
Mirki mam tabelę A i tabelę B, interesuje mnie taki join, aby stworzyć tzw. master view i dopełnić go null'ami.

O co chodzi:

tabela A{linia,qty,data}{"l1,5,2015-09-21", "l3,2,2015-09-21"}
tabela B{linia}{l1,l2,l3,l4,l5,l6}
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Dobra jestem idiotą, nie rozumiem dlaczego uparłem się żeby selectować z A zamiast B. LEFT OUTER JOIN'a próbowałem ale chyba na odwrót... Dzięki! ;)
  • Odpowiedz
@relik39: Sugerują spłaszczenie widoku (subquery flattening), które i tak by mogło nastąpić.

Widok zawsze jest traktowany jako zapytanie go generujące (mniej więcej).
Hinty mają na celu zmiejszenie liczby potencjalnych planów.
  • Odpowiedz
@plushy: ok, już doczytałem o co w tym chodzi, po prostu operując na samej nazwie widoku, bez jawnego podawania generującego go zapytania nie było dla mnie na pierwszy rzut oka oczywiste co się dzieje w tej transformacji. Thx za wskazówki.
  • Odpowiedz

Witojcie mireczki, właśnie wróciłem z pracy, jako że jestem poza granicami naszego kraju to jest jeszcze wcześnie :)
właśnie pije piwko ( bo przecież przy piwie lepiej się programuje/uczy :) )
A teraz przechodząc do sedna sprawy,
we wrześniu mam poprawkę z Baz danych,
mianowicie wygląda to tak, że przed egzaminem poprawkowym muszę zaliczyć projekt,
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Czy zmiana wyniku skomplikowanego zapytania sql po włączeniu constrainta not null na kolumnie(oczywiście bez dodawania/usuwania rekordów) może być wytłumaczalna w jakikolwiek sposób ( poza błędem silnika BD )?

#oracle
#sql
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@bred_one: kiedyś robiłem taki projekt apka w Javie + oracle ale bez żadnego RESTa i tam całe API było za pomocą procedur tak, że apka w ogóle nie miała dostępu do tabel. Często się tam kursory przewijały, ale zwykle do jakiegoś prostego przeformatowania wyniku.
  • Odpowiedz