Laboratorium 5

Transkrypt

Laboratorium 5
Laboratorium Bazy danych, Procedury i funkcje 5
Zad.1 Napisz procedurę, która sprawdzi i wypisze ilu pracowników jest zatrudnionych w zespole, którego
nazwa podana jest jako argument procedury.
Zad.2 Napisz funkcję, która zwróci nazwisko pracownika, który pracuje w zespole o identyfikatorze podanym
jako pierwszy argument funkcji i który został zatrudniony po dacie zatrudnienia pracownika o numerze
podanym jako drugi argument. Jeżeli nie ma takiego pracownika, zwrócony zostanie pusty łańcuch. (UWAGA:
nie wartość NULL, tylko łańcuch pusty!)
Zad.3 Napisz bezargumentową procedurę, która wyświetli nazwę zespołu, nazwę etatu, płacę minimalną i
maksymalną (z tabeli etat) oraz maksymalną płacę podstawową pracowników dla każdego etatu, o ile na tym
etacie zatrudnionych jest więcej niż 5 pracowników.
Zad.4 Napisz procedurę, która przyjmuje trzy argumenty: w pierwszym przekazujemy nazwisko pracownika,
w drugim przekazujemy nazwę zespołu, w trzecim zwracamy liczbę całkowitą. Zadaniem procedury jest
sprawdzenie i zwrócenie w trzecim argumencie procedury ilu jest pracowników o nazwisku podanym jako
pierwszy argument procedury zatrudnionych w zespole o nazwie podanej jako drugi argument. W przypadku,
gdy nie ma takiego pracownika i/lub zespołu o podanej nazwie, w trzecim argumencie zwracamy 0.
Zad.5 Napisz funkcję, która zwróci cztery znaki: dwie pierwsze cyfry numeru i dwie ostatnie litery nazwiska
pracownika, którego numer podany jest jako argument funkcji.
Zad.6 Napisz funkcję, która zwróci nazwisko szefa, którego zespół ma nazwę zgodną z wartością pierwszego
argumentu. Jeżeli nie ma takiego zespołu lub zespół nie zatrudnia pracowników, zwrócony zostanie pusty
łańcuch. (UWAGA: nie wartość NULL, tylko łańcuch pusty!)
Zad.7 Napisz bezargumentową procedurę, która wyświetli nazwę zespołu, średnią płacę podstawową i średnią
płacę dodatkową pracowników w każdym z zespołów, o ile w zespole zatrudnionych jest więcej niż 3
pracowników.
Zad.8(2 pkt.) Napisz procedurę, która obliczy i wypisze sumę płac podstawowych pracowników w taki
sposób, że dla każdej liczby całkowitej z przedziału 〈a , b〉 , gdzie a i b podane są jako argumenty funkcji,
sprawdzi czy istnieje w tabeli pracownik o numerze równym tej liczbie i powiększy sumę o jego płacę
podstawową lub jeśli nie ma takiego pracownika wypisze odpowiedni komunikat na ekranie ('NIE
ZNALAZŁEM'). Użyj pętli REPEAT...UNTIL...
Zad.9 Napisz procedurę, która przyjmuje trzy argumenty: w pierwszym przekazujemy nazwisko pracownika,
w drugim przekazujemy nazwę zespołu, w trzecim zwracamy płacę dodatkową. Zadaniem procedury jest
sprawdzenie i zwrócenie w trzecim argumencie procedury płacy dodatkowej pracownika
o nazwisku podanym jako pierwszy argument zatrudnionego w zespole o nazwie podanej jako drugi argument.
W przypadku, gdy nie ma takiego pracownika i/lub zespołu o podanej nazwie, w trzecim argumencie
zwracamy NULL.
Zad.10 Napisz procedurę, która dla każdej liczby całkowitej z przedziału 〈a , b〉 , gdzie a i b podane są jako
argumenty funkcji, sprawdzi czy istnieje w tabeli pracownik o numerze równym tej liczbie i wypisze na
ekranie komunikat 'TAK' lub 'NIE'. Użyj pętli REPEAT...UNTIL...
Zad.11 Zdefiniować funkcję, która zwróci ostatnią literę etatu pracownika o numerze podanym jako pierwszy
argument funkcji, którego staż pracy nie przekracza wartości podanej jako drugi argument. Jeśli pracownik nie
istnieje zostanie zwrócona wartość NULL.
Zad.12 Zdefiniować procedurę, która wypisze połączone wartości: 3 pierwsze litery nazwiska i 2 ostatnie
litery etatu pracowników, których nazwisko na drugiej pozycji ma literę podaną jako argument procedury.
Zad.13 Zdefiniować funkcję, której zadaniem jest obliczenie i zwrócenie różnicy dwóch liczb całkowitych a i
b, gdzie a i b są całkowitymi argumentami funkcji.
Laboratorium Bazy danych, Procedury i funkcje 5
Zad.14 Napisz funkcję, która obliczy i zwróci sumę płac dodatkowych pracowników z zespołu o nazwie
podanej jako argument funkcji.
Zad.15 Napisz funkcję, która zwróci nazwisko szefa, którego zespół ma identyfikator zgodny z wartością
pierwszego argumentu. Jeżeli nie ma takiego zespołu lub zespół nie zatrudnia pracowników, zwrócony
zostanie pusty łańcuch. (UWAGA: nie wartość NULL, tylko łańcuch pusty!)
Zad.16 Zdefiniować procedurę, która zwróci w drugim argumencie łańcuch będący pierwszym argumentem,
ale ze znakami zamienionymi na małe litery. W procedurze wypisz wartość pierwszego i drugiego argumentu
przed i po zamianie. (upper(), lower())
Zad.17 Napisz bezargumentową procedurę, która wyświetli nazwę zespołu oraz średnią płacę dodatkową
pracowników w każdym z zespołów, o ile w zespole zatrudnionych jest dokładnie 2 pracowników.
Zad.18 Zdefiniować funkcję, która obliczy i zwróci średnią z płac podstawowych pracowników o numerach
z przedziału 〈a ,b〉 gdzie a i b są całkowitymi argumentami funkcji.