-- czytelnicy posiadajacy wypozyczone ksiazki create view bibl.v_czytelnik_wypozyczenia as select c.nazwisko as "Nazwisko", c.imie as "Imie", count(*) as "Liczba ksiazek" from bibl.czytelnik c join bibl.wypozyczenie w on c.id_czytelnik = w.id_czytelnik where w.status=1 group by c.id_czytelnik order by c.nazwisko; -- czytelnicy nie posiadajacy wypozyczonych ksiazek create view bibl.v_czytelnik_brak_wypozyczen as select c.nazwisko as "Nazwisko", c.imie as "Imie" from bibl.czytelnik c where c.id_czytelnik not in ( select w.id_czytelnik from bibl.wypozyczenie w where w.status=1 ) order by c.nazwisko; -- czytelnicy ktorzy nigdy nie pozyczyli ksiazek create view bibl.v_czytelnik_nie_pozyczal as select nazwisko as "Nazwisko",imie as "Imie" from bibl.czytelnik where id_czytelnik not in ( select distinct id_czytelnik from bibl.wypozyczenie ) order by nazwisko ; -- ksiazki wypozyczone create view bibl.v_ksiazki_pozyczone as select k.tytul as "Tytul", k.autor as "Autor" from bibl.egzemplarz e join bibl.ksiazka k on e.id_ksiazka=k.id_ksiazka where e.status=1 order by k.tytul ; -- ksiazki w bibliotece create view bibl.v_ksiazki_w_bibliotece as select k.tytul as "Tytul", k.autor as "Autor" from bibl.egzemplarz e join bibl.ksiazka k on e.id_ksiazka=k.id_ksiazka where e.status=0 order by k.tytul ; -- liczba ksiazek w bibliotece i pozyczonych create view bibl.v6 (opis , liczba_ksiazek ) as select 'Ksiazki w bibliotece', count(*) from bibl.egzemplarz where status=0 union select 'Ksiazki pozyczone', count(*) from bibl.egzemplarz where status=1 order by 1; -- liczba ksiazek w poszczegolnych kategoriach create view bibl.v7 as select d.nazwa as "Nazwa", count(*) as "Liczba ksiazek" from bibl.dzial d join bibl.ksiazka k on d.id_dzial = k.id_dzial group by d.nazwa; -- liczba ksiazek w poszczegolnych kategoriach (pozyczone, w bibliotece) create view bibl.v8 (Kategoria, Opis ,Liczba_pozycji ) as select d.nazwa, case when e.status=0 then 'W bibliotece' when e.status=1 then 'Pozyczone' end, count(*) from bibl.dzial d join bibl.ksiazka k on d.id_dzial = k.id_dzial join bibl.egzemplarz e on k.id_ksiazka = e.id_ksiazka group by d.nazwa,e.status order by d.nazwa,e.status; -- ksiazki najczesciej wypozyczane create view bibl.v9 as select k.tytul as "Tytul", k.autor as "Autor", count(*) as "Liczba wypozyczen" from bibl.ksiazka k join bibl.egzemplarz e on k.id_ksiazka = e.id_ksiazka join bibl.wypozyczenie w on e.id_egzemplarz = w.id_egzemplarz group by k.id_ksiazka having count(*) > 1 order by "Liczba wypozyczen" desc; -- ksiazki nigdy nie pozyczone create view bibl.v10 as select k.tytul as "Tytul", k.autor as "Autor" from bibl.ksiazka k where k.id_ksiazka not in ( select e.id_ksiazka from bibl.wypozyczenie w join bibl.egzemplarz e on w.id_egzemplarz = e.id_egzemplarz ) ; --