Zadania
Poniższe zadania muszą być rozwiązane za pomocą czystego SQLa (bez żadnych proceduralnych dodatków typu PL/SQL). Każde zadanie można i trzeba rozwiązać za pomocą jednego polecenia SQL.
- Dany jest łańcuch ‚100,130,150’ (lub inny o podobnym formacie). Znajdź pracowników o tych identyfikatorach.
- Znajdź pracowników, których nazwiska zawierają zadaną przez użytkownika liczbę liter ‘a’. Litery nie muszą być obok siebie.
- Dany jest stos (na początku pusty). W tabeli znajduje się lista operacji wstawienia i usunięcia
wartości. Tabela składa się z trzech atrybutów:
- Numer porządkowy operacji
- Typ operacji (wstaw/usuń)
- Wstawiana wartość (null dla usuń).
Znajdź ostateczny stan stosu.
- Dana jest kolejka FIFO (na początku pusta). W tabeli znajduje się lista operacji wstawienia i usunięcia wartości. Tabela składa się z trzech atrybutów:
- Numer porządkowy operacji
- Typ operacji (wstaw/usuń)
- Wstawiana wartość (null dla usuń).
Znajdź ostateczny stan kolejki.
- Dany jest ciąg unikalnych liczb z dziurami. Znajdź najmniejszą wartość której nie ma w tym
ciągu (>=1). Ciąg ten jest reprezentowany przez tabelę o jednym atrybucie liczbowym. Przykładowo, dla tabeli w której jest ciąg liczb 1,2,4,5,7 zwrócona zostanie 3. Dla tabeli, w której jest ciąg liczb 1,2,3,4,5 zwrócona zostanie 6.
- Dany jest ciąg unikalnych liczb z dziurami (>=1). Ciąg ten jest reprezentowany przez tabelę o
jednym atrybucie liczbowym. Znajdź długości kolejnych ciągłych grup liczb. Przykładowo, dla 5,6,7,10,11,20,21,22,23 zostanie zwrócone: 3,2,4.
- Wygeneruj zadaną liczbę wierszy (to co w nich będzie jest dowolne).
- Dany jest dowolny łańcuch. Zamień każdą jego literę na wiersz. Przykładowo, dla łańcucha ‘kotek’ zostaną zwrócone kolejno k,o,t,e i k.
- Stwórz tabelę z atrybutem do którego można zapisać dowolny łańcuch nie zawierający liter. Warunek CHECK nie może być długi (nie wolno wymieniać kolejno liter w warunku ani wykorzystywać wyrażeń regularnych)
- Zakładając, że nazwa zespołu składa się z 2 wyrazów rozdzielonych spacją, zamień ich
kolejność. Nie używaj operatora konkatenacji, podzapytań (tylko funkcje wierszowe).
- Znajdź pary pracowników, dla których pierwsze nazwisko ma sufiks, który jest prefiksem
drugiego nazwiska. Długość tej „części wspólnej” może być dowolna, ale nie krótsza niż 3 znaki
- Wygeneruj ciąg fibonacciego o zadanej długości.
- Napisz zapytanie generujące wszystkie permutacje liczb z zakresu 1 do n. Zapytanie musi być oparte o zmienną podstawienia, która definiuje n. Wynik ma mieć postać tabeli z 3 kolumnami:
- Identyfikator permutacji (generowany w dowolny sposób)
- Numer porządkowy liczby w permutacji
- Liczba
- Napisz zapytanie generujące wszystkie k elementowe kombinacje liczb z zakresu 1 do n. Zapytanie musi być oparte o zmienne podstawienia, która definiują n i k. Wynik ma mieć postać tabeli z 2 kolumnami:
- Identyfikator kombinacji (generowany w dowolny sposób)
- Liczba