Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Podaj nazwę i adres klienta o numerze 2345:
- SELECT Nazwa, Adres FROM `klient` WHERE NrKlienta = 2345
- Podaj numery i nazwy klientów „złotych”:
- SELECT NrKlienta, Nazwa FROM `klient` WHERE STATUS like 'złoty'
- Podaj numery kont założonych przed rokiem 2010:
- SELECT NrKOnta FROM `konto` WHERE DataOtwarcia < "2010-01-01"
- Podaj numery kont założonych w oddziale pko Krakow:
- SELECT NrKOnta FROM `konto` WHERE Oddzial LIKE "pko Krakow"
- Podaj numery kont założonych co najmniej 10 lat temu (*):
- SELECT NrKOnta FROM `konto` WHERE DataOtwarcia < DATE_SUB(CURDATE(),INTERVAL 10 YEAR)
- Podaj dane kont założonych w roku 2000 uporządkowane według daty nierosnąco:
- SELECT * FROM `konto` WHERE DataOtwarcia like "2000%" ORDER BY DataOtwarcia desc
- Podaj dane kont o stanie niższym niż 100 zł i dane kont o stanie wyższym niż 300 zł:
- SELECT * FROM `konto` WHERE Saldo < 100 OR Saldo >300
- Podaj dane lokat klienta 2345:
- SELECT * FROM `lokata` WHERE NrKlienta = 2345
- Podaj numery właścicieli (nr klienta) lokat typu „6m”:
- SELECT NrKlienta FROM `lokata` WHERE TypLokaty like "6m"
- Podaj numery, daty i kwoty transakcji dokonanych przez klienta 2345, uporządkowane według kwoty:
- SELECT NrTransakcji, Data, Kwota FROM `transakcja` WHERE NrKlienta = 2345 order by Kwota
- Podaj numery kont o ujemnym saldzie:
- SELECT NrKOnta FROM `konto` WHERE Saldo < 0
- Podaj typy lokat oferowanych przez bank i ich oprocentowanie, uporządkowane według czasu trwania:
- SELECT TypLokaty, Oprocentowanie FROM `typ_lokaty` ORDER BY CzasTrwania
- ==========================================================================================================================
- ==========================================================================================================================
- największą liczbę całkowitą mniejszą od: 56.8, -31.567:
- SELECT FLOOR(56.8), FLOOR(-31.567)
- najmniejszą liczbę całkowitą większą od: 56.8, -31.567:
- SELECT CEIL(56.8), CEIL(-31.567)
- resztę z dzielenia 10 przez 2, 10 przez 5, 10 przez 6:
- SELECT MOD(10, 2), MOD(10, 5), MOD(10, 6)
- 13579.2468 zaokrąglone do 2 miejsc po przecinku i obcięte do dwóch miejsc po przeciniku (różnica?):
- SELECT ROUND(13579.2468, 2), TRUNCATE(13579.2468, 2)
- ciąg będący złożeniem imienia i nazwiska (ze spacją w środku):
- SELECT CONCAT_WS(" ","Pan","Majczel") as Imie_Nazwisko
- 13579.2468 zł zaokrąglone do 2 miejsc po przecinku:
- SELECT ROUND("13579.2468",2)
- imię i nazwisko (jako dwa oddzielne słowa) z ciągu zawierającego imię i nazwisko oddzielone spacją:
- SELECT SUBSTRING_INDEX("Pan Majczel", " ", 1) as Imie, SUBSTRING_INDEX("Pan Majczel", " ", -1) as Nazwisko
- bieżącą datę i godzinę:
- SELECT CURRENT_DATE, CURRENT_TIME()
- datę 198 dnia bieżacego roku:
- SELECT MAKEDATE(year(CURRENT_DATE()),198)
- rok, miesiąc, dzień ze swojej daty urodzenia:
- SELECT year("1996-10-18") as ROK, MONTH("1996-10-18") AS MIESIAC, DAY("1996-10-18") AS DZIEN
- dzień tygodnia odpowiadający w/w dacie urodzenia:
- SELECT DAYOFWEEK("1996-10-18")
- liczbę dni od w/w daty urodzenia:
- SELECT DATEDIFF(CURRENT_DATE, "1996-10-18")
- swoje imię w postaci kodu ascii:
- SELECT ASCII("M"), ASCII("i"), ASCII("c"), ASCII("h"), ASCII("a"), ASCII("ł")
- ciąg ‘podstawy danych’ uzupełniony słowem „baz” (wynik: ‘podstawy baz danych’, sposób uzyskania wyniku powinien być ogólny, można jedynie założyć, że nowe słowo wstawiane jest po pierwszej spacji:
- SELECT REPLACE("Podstawy danych", " ", " baz ")
- ==========================================================================================================================
- ==========================================================================================================================
- Dla każdego typu lokaty podaj przewidywany zysk po upływie czasu jej trwania dla 1000 zł:
- SELECT 1000*(1+Oprocentowanie/100)^12/CzasTrwania AS PRZEWIDYWANY_ZYSK FROM `typ_lokaty`
- Podaj dane kont założonych w roku 2000:
- SELECT * FROM `konto` WHERE DataOtwarcia like "2000%"
- Podaj numery kont założonych co najmniej 10 lat temu
- SELECT NrKOnta FROM `konto` WHERE DataOtwarcia < DATE_SUB(CURDATE(),INTERVAL 10 YEAR)
- Podaj dane kont wprowadzając dodatkową kolumnę, w której dla kont z debetem będzie umieszczona informacja „debet”:
- SELECT *, if(Saldo < 0, 'DEBET', 'NIE DEBET') AS DEBET FROM `konto`
- Podaj dane transakcji uporządkowane według roku wykonania transakcji i kwoty nierosnąco:
- SELECT * FROM `transakcja` ORDER BY YEAR(Data) desc, kwota desc
- Podaj dane klientów uporządkowane według długości ich nazwy:
- SELECT * FROM klient ORDER BY length(Nazwa)
- Podaj dane transakcji oraz dodatkowo dla każdej z nich typ (słowo: wpłata/wypłata):
- SELECT *, if(kwota<0, 'Wyplata', 'Wplata') AS Typ FROM `transakcja`
- Podaj numery i daty założenia kont uporządkowane według roku założenia konta:
- SELECT NrKOnta, DataOtwarcia FROM konto order by YEAR(DataOtwarcia)
- Podaj dane klientów, zmieniając status każdego z nich na odpowiednik angielski, z pominięciem klientów o nieustalonym statusie:
- SELECT NrKlienta, Nazwa, Adres, if(status="złoty", "gold", if(status = "srebrny", "silver", if(status="zwykły",
- "common", null))) as "account type" from klient
- ==========================================================================================================================
- ==========================================================================================================================
- Podaj numery i nazwy klientów posiadających lokaty oraz numery ich lokat:
- SELECT klient.NrKlienta, Nazwa, lokata.NrLokaty FROM `klient` JOIN lokata ON klient.NrKlienta = lokata.NrKlienta
- Podaj nazwy klientów posiadających konto i lokatę:
- SELECT DISTINCT Nazwa, klient.NrKlienta FROM klient JOIN klient_konto ON klient.NrKlienta=klient_konto.NrKlienta
- JOIN lokata ON klient.NrKlienta = lokata.NrKlienta
- Podaj numery i nazwy klientów, którzy nie posiadają lokat:
- SELECT Nazwa, klient.NrKlienta FROM klient LEFT JOIN lokata ON lokata.NrKlienta=klient.NrKlienta where NrLokaty is
- NULL
- Podaj nazwy klientów, numery klientów i numery ich kont, uporządkowane według nazw klientów i numerów kont:
- SELECT Nazwa, klient.NrKlienta, NrKonta FROM `klient` JOIN klient_konto ON klient_konto.NrKlienta = klient.NrKlienta ORDER BY
- Nazwa, NrKonta
- Podaj nazwy klientów, numery klientów, numery ich kont oraz stan ich kont:
- SELECT Nazwa, klient_konto.NrKlienta, klient_konto.NrKonta, Saldo FROM `klient` JOIN klient_konto ON
- klient_konto.NrKlienta = klient.NrKlienta JOIN konto ON konto.NrKOnta = klient_konto.NrKonta
- Podaj numer klienta, będącego właścicielem konta z debetem:
- SELECT klient.NrKlienta FROM klient JOIN klient_konto ON klient_konto.NrKlienta=klient.NrKlienta JOIN konto ON
- konto.NrKOnta=klient_konto.NrKonta WHERE Saldo<0
- Podaj dane klientów kont o numerach: 745363, 348973, 120768:
- SELECT * FROM klient JOIN klient_konto ON klient_konto.NrKlienta=klient.NrKlienta WHERE NrKonta IN(745363, 348973, 120768)
- Podaj nazwy klientów oddziału pko Krakow:
- SELECT Nazwa FROM klient JOIN klient_konto ON klient_konto.NrKlienta=klient.NrKlienta JOIN konto ON
- konto.NrKOnta=klient_konto.NrKonta WHERE Oddzial like "pko Krakow"
- Podaj dane lokat typu "6m" oraz ich oprocentowanie:
- SELECT * FROM `lokata` JOIN typ_lokaty ON typ_lokaty.TypLokaty=lokata.TypLokaty WHERE lokata.TypLokaty like "6m"
- Podaj dane lokat typu „3m” oraz dane ich właścicieli:
- SELECT * FROM `lokata` JOIN typ_lokaty ON typ_lokaty.TypLokaty=lokata.TypLokaty JOIN klient ON
- klient.NrKlienta=lokata.NrKlienta WHERE lokata.TypLokaty like "3m"
- Podaj dane lokat oraz daty ich pierwszej zapadalności:
- SELECT *, DATE_ADD(DataOtwarcia, INTERVAL CzasTrwania month) AS ZAPADALNOSC FROM `lokata` JOIN typ_lokaty ON
- typ_lokaty.TypLokaty=lokata.TypLokaty
- Podaj dane transakcji dokonanych przez klienta o nazwisku Nowacki, uporządkuj je według kwoty:
- SELECT * FROM `transakcja` JOIN klient ON transakcja.NrKlienta=klient.NrKlienta WHERE Nazwa like "Nowacki" ORDER
- BY Kwota
- Podaj dane transakcji dokonanych przez klienta o nazwisku Nowacki, uporządkuj je według rodzaju transakcji (nie na podstawie kwoty!):
- SELECT *, IF(Kwota<0,"Wyplata","Wplata") AS Typ FROM transakcja JOIN klient ON
- transakcja.NrKlienta=klient.NrKlienta WHERE Nazwa like "Nowacki" ORDER BY Typ
- Podaj nazwy klientów dokonujących wpłat oraz numery kont i kwoty tych transakcji, dane uporządkuj według nazwy klienta i kwoty transakcji:
- SELECT Nazwa, NrKonta, Kwota FROM transakcja JOIN klient ON transakcja.NrKlienta=klient.NrKlienta WHERE Kwota>0
- ORDER BY Nazwa, Kwota
- Podaj numery kont, na których nie dokonano żadnej transakcji:
- SELECT * FROM konto LEFT JOIN transakcja ON transakcja.NrKonta=konto.NrKOnta WHERE transakcja.NrKOnta is NULL
- Podaj numery kont, na które dokonano wpłaty i nazwiska ich właściecieli:
- SELECT klient_konto.NrKonta, Nazwa FROM klient_konto JOIN klient ON klient_konto.NrKlienta=klient.NrKlienta JOIN
- transakcja ON transakcja.NrKonta=klient_konto.NrKonta WHERE Kwota > 0
- Podaj nazwy i numery klientów, którzy mają tylko lokaty:
- SELECT * FROM `lokata` LEFT JOIN klient ON klient.NrKlienta=lokata.NrKlienta LEFT JOIN klient_konto ON
- klient_konto.NrKlienta=klient.NrKlienta WHERE klient_konto.NrKonta is NULL and NrLokaty is not null
- Podaj nazwy i numery klientów, którzy mają tylko konta:
- SELECT Nazwa, klient_konto.NrKlienta FROM klient LEFT JOIN klient_konto ON klient_konto.NrKlienta=klient.NrKlienta
- LEFT JOIN lokata ON lokata.NrKlienta=klient_konto.NrKlienta WHERE NrLokaty is NULL and klient_konto.NrKonta is not
- null
- Podaj nazwy i numery klientów, którzy nie mają ani lokaty ani konta:
- SELECT Nazwa, klient.NrKlienta FROM klient LEFT JOIN klient_konto ON klient_konto.NrKlienta=klient.NrKlienta LEFT
- JOIN lokata ON lokata.NrKlienta=klient_konto.NrKlienta WHERE NrLokaty is NULL and klient_konto.NrKonta is null
- Dla każdej lokaty podaj datę jej pierwszej zapadalności i przewidywany zysk brutto:
- SELECT DATE_ADD(DataOtwarcia, INTERVAL CzasTrwania month) AS ZAPADALNOSC, 1000 (1+Oprocentowanie/100)^12/
- CzasTrwania AS PRZEWIDYWANY_ZYSK FROM `lokata` JOIN typ_lokaty ON typ_lokaty.TypLokaty=lokata.TypLokaty
- ==========================================================================================================================
- ==========================================================================================================================
- Nazwy klientów co mają konta:
- SELECT Nazwa FROM klient WHERE NrKlienta = any(SELECT NrKlienta FROM klient_konto)
- Właściciele kont z debetem:
- SELECT Nazwa FROM klient WHERE NrKlienta = any(SELECT NrKlienta FROM klient_konto WHERE NrKonta = any(SELECT
- NrKonta FROM konto WHERE Saldo < 0))
- Numery kont, które nie należą do żadnego klienta:
- SELECT NrKonta FROM konto WHERE NrKonta != all(SELECT NrKonta FROM klient_konto)
- Nazwy klientów co mają tylko lokaty:
- SELECT Nazwa FROM klient WHERE NrKlienta != all(SELECT NrKlienta FROM klient_konto) and NrKlienta = any(SELECT
- NrKlienta FROM lokata)
- Nazwy klientów odddziłu PKO Krakow co maja lokaty:
- SELECT Nazwa FROM klient WHERE NrKlienta = any(SELECT NrKlienta FROM klient_konto WHERE NrKOnta = any(SELECT
- NrKOnta FROM konto WHERE Oddzial = "pko Krakow")) AND NrKlienta = any(SELECT NrKlienta FROM lokata)
- Dane lokat nalezacych do wlasciciela o numerze konta 348973:
- SELECT * FROM `lokata` WHERE NrKlienta = any(SELECT NrKlienta FROM klient_konto WHERE NrKonta = 348973)
- Nazwy właścicieli kont o stanie większym niż stan dowolnego konta Nowackiego:
- SELECT Nazwa FROM klient WHERE NrKlienta = any(SELECT NrKlienta FROM klient_konto WHERE NrKonta = any(SELECT
- NrKonta FROM konto WHERE Saldo > any(SELECT Saldo FROM konto WHERE NrKonta = any(SELECT NrKonta FROM klient_konto
- WHERE NrKlienta = any(SELECT NrKlienta FROM klient WHERE Nazwa = "Nowacki")))))
- Nazwiska klientow co maja konto i lokate:
- SELECT Nazwa FROM klient WHERE NrKlienta = any(SELECT NrKlienta FROM klient_konto) and NrKlienta = any(SELECT
- NrKlienta FROM lokata)
- Numery kont na które wpłat dokonał Nowacki w ciągu ostatnich dwóch lat:
- SELECT NrKonta FROM transakcja WHERE NrKlienta = any(SELECT NrKlienta FROM klient WHERE Nazwa = "Nowacki") and
- Data > DATE_SUB(CURDATE(),INTERVAL 2 YEAR)
- Typy lokat, dla ktorej nie założono żadnej lokaty:
- SELECT TypLokaty FROM lokata WHERE TypLokaty != all(SELECT TypLokaty FROM typ_lokaty)
- Nazwy właścicieli kont o stanie różniącym się od stanu konta 528772 o nie więcej niż +/- 50%:
- SELECT Nazwa FROM klient WHERE NrKlienta = any(SELECT NrKlienta FROM klient_konto WHERE NrKonta = any(SELECT
- NrKonta FROM konto WHERE Saldo > any(SELECT Saldo*0.5 FROM konto WHERE NrKonta = 528772) and Saldo <any(SELECT
- Saldo*1.5 FROM konto WHERE NrKonta = 528772))) ????????????????????????????????????????
- Nazwy klientow dokonujących wpłat uporządkowane według daty transakcji:
- SELECT Nazwa FROM klient WHERE NrKlienta = any(SELECT NrKlienta FROM transakcja WHERE Kwota > 0 ORDER BY Data)
- Nazwa klienta co nie dokonał żadnej transakcji:
- SELECT Nazwa FROM klient WHERE NrKlienta != all(SELECT NrKlienta FROM transakcja)
- Oprocentowanie lokat Nowaka:
- SELECT Oprocentowanie FROM typ_lokaty WHERE TypLokaty = any(SELECT TypLokaty FROM lokata WHERE NrKlienta =
- any(SELECT NrKlienta FROM klient WHERE Nazwa = "Nowak"))
- ==========================================================================================================================
- ==========================================================================================================================
- Dla kazdego klienta podaj liczbe jego lokat:
- SELECT NrKlienta, COUNT(NrKlienta) FROM lokata group by NrKlienta
- Podaj numery kont z saldem większym niż 10% sumy aktywów banku:
- SELECT NrKonta FROM konto WHERE Saldo > any(SELECT SUM(Saldo)*0.1 FROM konto)
- Podaj nazwisko i numer klienta co posiada najwięcej lokat:
- ??????????????????????????????????
- Liczba kont klienta nowak:
- SELECT COUNT(klient_konto.NrKlienta) AS liczba_kont FROM klient_konto JOIN klient ON
- klient_konto.NrKlienta=klient.NrKlienta WHERE Nazwa="Nowak"
- Nazwy oddzialow banku i liczba kont w kazdym z nich:
- SELECT Oddzial, COUNT(NrKOnta) FROM `konto` GROUP BY Oddzial
- Suma stanów kont w oddziale pko Warszawa:
- SELECT SUM(Saldo) FROM `konto` WHERE Oddzial = "pko Warszawa"
- Suma stanów kont w każdym oddziale:
- SELECT SUM(Saldo) FROM `konto` group by Oddzial
- Liczba transakcji kazdego z klientow, niemalejaco:
- SELECT NrKlienta, COUNT(NrKlienta) as Liczba FROM `transakcja` GROUP BY NrKlienta ORDER BY Liczba
- Liczba transakcji na kazdym koncie, nierosnaco:
- SELECT NrKonta, COUNT(NrKonta) as Liczba FROM `transakcja` GROUP BY NrKonta ORDER BY Liczba DESC
- Liczba wpłat i wypłat:
- SELECT (SELECT COUNT(Kwota) FROM transakcja WHERE KWOTA > 0) AS WPŁATA , (SELECT COUNT(Kwota) FROM transakcja
- WHERE KWOTA < 0) AS WYPŁATA FROM `transakcja` GROUP BY WYPŁATA
- Sumaryczna kwota lokat kazdego klienta:
- SELECT NrKlienta, SUM(Kwota) FROM `lokata` GROUP BY NrKlienta
- Sumatyczna kwota wpłat dokonanych przez każdego klienta:
- SELECT NrKlienta, SUM(Kwota) FROM transakcja WHERE Kwota > 0 GROUP BY NrKlienta
- Sumaryczna kwota wpłat dokonanych na każde konto:
- SELECT NrKonta, SUM(Kwota) FROM transakcja WHERE Kwota > 0 GROUP BY NrKonta
- Bilans transakcji nowaka w kazdym miesiacu w którym dokonywał transakcji:
- SELECT klient.NrKlienta, MONTH(Data) AS MIESIAC, SUM(KWOTA) AS SUMA FROM `transakcja` JOIN klient ON
- klient.NrKlienta=transakcja.NrKlienta WHERE Nazwa = "Nowak" group by miesiac
- Numer najstarszego konta w banku:
- SELECT NrKonta FROM `konto` WHERE DataOtwarcia = (SELECT MIN(DataOtwarcia) FROM konto)
- Nazwy oddziałów banku oraz numery najstarszego z kont każdego z tych oddziałów:
- SELECT Oddzial, MIN(DataOtwarcia) FROM `konto` GROUP BY Oddzial
- Nazwy klientow ktorzy dokonali największej liczby transakcji:
- ???????????????????????????????
- Numery kont o stanie większym od średniej stanów wszystkich kont:
- SELECT NrKOnta FROM `konto` WHERE SALDO > (SELECT AVG(Saldo) FROM konto)
- Dla każdego oddziału, podaj numery kont o stanie większym od średniej stanów kont tego oddzialu:
- ??????????????????????????????
- Podaj liczbe klientow kazdego oddzialu:
- ??????????????????????????????
- Dla kazdego klienta podaj liczbe jego kont i liste numerow kont:
- SELECT klient.NrKlienta, COUNT(klient_konto.NrKlienta) AS liczba_kont, GROUP_CONCAT(klient_konto.NrKonta) as
- Numery_kont FROM klient LEFT JOIN klient_konto ON klient_konto.NrKlienta=klient.NrKlienta GROUP BY NrKlienta
- Dla kazdego klienta podaj liczbe jego kont i liste numerow kont lub informacje o braku kont:
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement