1484605956

1484605956



Lista druga Bazy danych

AND pensje.dolna_granica <= pracownicy.pensja AND pracownicy.pensja <= pensje.gorna_granica ORDER BY wydziały.lokalizacja DESC;

(d)    wyznacz nazwiska pracowników, którzy pracują w tych samych wydziałach, co ich przełożeni. Obok nazwiska pracownika umieść nazwisko przełożonego i nr wydziału, w którym obaj pracują,

SELECT pracownicy.imię AS imię, pracownicy.nazwisko AS nazwisko, przełożeni.nazwisko AS przełożony, pracownicy.nr_wydzialu AS numer.wydziału FROM pracownicy, pracownicy AS przełożeni WHERE pracownicy.przelozony=przelozeni.nr.pracownika AND pracownicy.nr_wydzialu=przelozeni.nr.wydziału;

(e)    wyznacz stanowiska (bez powtórzeń), na których nie ma prowizji. Uporządkuj wynik wg liczby liter w stanowisku (wskazówka: długość napisu jest zwracana przez funkcję length, a końcowe spacje można usunąć funkcją rtrim),

SELECT stanowisko FROM    pracownicy

WHERE    prowizja > 0 OR prowizja IS NULL

GROUP BY stanowisko

ORDER BY length(rtrim(stanowisko));

(f)    ustaw w pary pracowników, którzy pracują w tym samym wydziale. Nazwiska w parach powinny być różne i pary nie powinny się powtarzać,

SELECT pracownicy1.nazwisko AS nazwisko, pracownicy2.nazwisko AS nazwisko, pracownicy1.nr.wydzialu AS nr.wydzialu FROM pracownicy AS pracownicyl, pracownicy AS pracownicy2 WHERE pracownicyl.nr_wydzialu=pracownicy2.nr.wydziału

AND pracownicyl.nr.pracownika < pracownicy2.nr.pracownika;

3. Używając pliku poset.sąl utwórz tabelę p opisującą pewną relację dwuargumentową. Przy pomocy komend SQLa:

(a)    wypisz wszystkie liczby występujące w p; oznaczmy zbiór tych liczb przez d;

\i Dokumenty/semestr.3/Bazy.Danych/lista2/poset.sql

INSERT INTO d (SELECT x FROM p UNION

SELECT y FROM p);

(b)    traktując p jako relację na d sprawdź, czy jest ona zwrotna;

SELECT z

FROM d EXCEPT SELECT x FROM p

WHERE p.x=p.y;

(c)    nie oszukujmy się - nie jest zwrotna; popraw p tak, by była zwrotna na d;

CREATE TABLE p2 (x INTEGER, y INTEGER);

INSERT INTO p2

(SELECT * FROM p

UNION SELECT z,z FROM d);

2



Wyszukiwarka

Podobne podstrony:
Lista druga Bazy danych i Dokumenty/semestr.3/Bazy.Danych/lista2/ksiegarnia.sql SELECT autorzy.imię,
Laboratorium Bazy Danych 1 Język SQL będzie suma pola Pensja dla wszystkich rekordów tablicy o danej
Bazy danych Lista druga 1.    Załóż tabelę logika o trzech atrybutach p,q,r typu BOOL
Bazy danych Lista druga i sprawdzenie SELECT z FROM d EXCEPT SELECT x FROM p2 WH
Bazy danych Lista druga książki.rok_wydania AS rok, egzemplarze.nr_egzemplarza AS numer FROM egzempl
Internetowe Bazy Danych - wykład 12PERL HISTORIA Perl (Pracitcal Extraction and Report Language) jes
Internetowe Bazy Danych - wykład 12 chmod LISTA Funkcja ta powoduje zmianę atrybutów plików znajdują
WSiP6 BAZY DANYCH I SYSTEMY BAZ DANYCH Tabela 9.3. Lista lekarzy (1) Klucz główny A Atrybut
> Bazy danych - jak je ugryźć < 19 > and dziesiata_cyfra(pesel)=cyfra_kontrolna(pesel) and
histogram ^Dolna granica tolerancji^ ^Górna granica tolerancji^ -Y-J -V-J Liczba wystąpień 9.1

więcej podobnych podstron