[]-----------------------[]
| MySQL feladatsor A |
[]-----------------------[]
a) Listázza ki az Ön számára látható adatbázisokat!
show DATABASES;
| Database |
| information_schema |
| sqlguru |
b) Tegye aktuálissá az sqlguru adatbázist!
use sqlguru;
select DATABASE();
c) Listázza ki az sqlguru adatbázisban található táblákat!
show TABLES;
| Tables_in_sqlguru |
| _cimek |
| _mp3 |
| _nevnap |
| _orszagok |
| _program |
| bszakkorok |
| btagsag |
| btanulok |
| cdolgozo |
| cegyseg |
| cforgalom |
| cjutalek |
| pfutar |
| ppizza |
| prendeles |
| ptetel |
| pvevo |
| users |
d) Listázza ki a cdolgozo tábla szerkezetét!
desc cdolgozo;
| Field |
Type |
Null |
Key |
Default |
Extra |
| DKOD |
varchar(50) |
NO |
PRI |
|
|
| EKOD |
varchar(50) |
YES |
|
|
|
| NEV |
varchar(255) |
YES |
|
|
|
| BEO |
varchar(255) |
YES |
|
|
|
| FONOK |
varchar(50) |
YES |
|
|
|
| BELEP |
datetime |
YES |
|
|
|
| FIZ |
double |
YES |
|
|
|
| FIZPLUS |
double |
YES |
|
|
|
e) Listázza ki a tábla teljes tartalmát!
select * from cdolgozo;
| DKOD |
EKOD |
NEV |
BEO |
FONOK |
BELEP |
FIZ |
FIZPLUS |
| 7369 |
20 |
Lakatos János |
Ügyintéző |
7902 |
1990-12-15 00:00:00 |
48000 |
|
| 7499 |
30 |
Zámbó József |
Eladó |
7698 |
1991-02-18 00:00:00 |
96000 |
300 |
| 7521 |
30 |
Torkos Béla |
Eladó |
7698 |
1991-02-20 00:00:00 |
75000 |
500 |
| 7566 |
20 |
Kele Pál |
Vezető |
7839 |
1991-03-31 00:00:00 |
178500 |
|
| 7654 |
30 |
Mór Izabella |
Eladó |
7698 |
1991-09-26 00:00:00 |
75000 |
1400 |
| 7698 |
30 |
Lázár Vilmos |
Vezető |
7839 |
1991-04-29 00:00:00 |
171000 |
|
| 7782 |
10 |
Kalapos Jolán |
Vezető |
7839 |
1991-06-07 00:00:00 |
147000 |
|
| 7788 |
20 |
Keve Tivadar |
Elemző |
7566 |
1997-04-16 00:00:00 |
180000 |
|
| 7839 |
10 |
Galamb Ödön |
Elnök |
|
1991-11-15 00:00:00 |
300000 |
|
| 7844 |
30 |
Titán Judit |
Eladó |
7698 |
1991-09-06 00:00:00 |
90000 |
0 |
| 7876 |
20 |
Fenyő Réka |
Ügyintéző |
7788 |
1997-05-20 00:00:00 |
66000 |
|
| 7900 |
30 |
Jancsó Zoltán |
Ügyintéző |
7698 |
1991-12-01 00:00:00 |
57000 |
|
| 7902 |
20 |
Kiss Gergő |
Elemző |
7566 |
1991-12-01 00:00:00 |
180000 |
|
| 7934 |
10 |
Bútor Zoltán |
Ügyintéző |
7782 |
1992-01-21 00:00:00 |
78000 |
|
f) Listázza ki a dolgozók nevét és beosztását!
select nev,beo from cdolgozo;
| nev |
beo |
| Lakatos János |
Ügyintéző |
| Zámbó József |
Eladó |
| Torkos Béla |
Eladó |
| Kele Pál |
Vezető |
| Mór Izabella |
Eladó |
| Lázár Vilmos |
Vezető |
| Kalapos Jolán |
Vezető |
| Keve Tivadar |
Elemző |
| Galamb Ödön |
Elnök |
| Titán Judit |
Eladó |
| Fenyő Réka |
Ügyintéző |
| Jancsó Zoltán |
Ügyintéző |
| Kiss Gergő |
Elemző |
| Bútor Zoltán |
Ügyintéző |
g) Jelenítse meg a dolgozók névsorát!
(Név)
select nev Név from cdolgozo order by nev;
| Név |
| Bútor Zoltán |
| Fenyő Réka |
| Galamb Ödön |
| Jancsó Zoltán |
| Kalapos Jolán |
| Kele Pál |
| Keve Tivadar |
| Kiss Gergő |
| Lakatos János |
| Lázár Vilmos |
| Mór Izabella |
| Titán Judit |
| Torkos Béla |
| Zámbó József |
h) Készítse el a cégnél lévő beosztások listáját!
Minden beosztás csak egyszer szerepelhet
(Beosztások listája)
select distinct beo 'Beosztások listája' from cdolgozo;
| Beosztások listája |
| Ügyintéző |
| Eladó |
| Vezető |
| Elemző |
| Elnök |
i) Állítson elő egy fizetési TOP-listát!
(Név,Fizetés)
select nev as Név, fiz as Fizetés from cdolgozo order by fiz DESC;
| Név |
Fizetés |
| Galamb Ödön |
300000 |
| Keve Tivadar |
180000 |
| Kiss Gergő |
180000 |
| Kele Pál |
178500 |
| Lázár Vilmos |
171000 |
| Kalapos Jolán |
147000 |
| Zámbó József |
96000 |
| Titán Judit |
90000 |
| Bútor Zoltán |
78000 |
| Mór Izabella |
75000 |
| Torkos Béla |
75000 |
| Fenyő Réka |
66000 |
| Jancsó Zoltán |
57000 |
| Lakatos János |
48000 |
j) Jelenítse meg annak a dolgozónak az adatait, akinek legkisebb a fizetése!
(Név, Fizetés)
select nev as Név, fiz as Fizetés from cdolgozo order by fiz limit 1;
| Név |
Fizetés |
| Lakatos János |
48000 |
k) Jelenítsük meg azon dolgozók adatait, akik 90-180 ezer Ft között keresnek!
A határértékeket keresők is legyenek a listában!
(*)
select * from cdolgozo where fiz BETWEEN 90000 and 180000;
| DKOD |
EKOD |
NEV |
BEO |
FONOK |
BELEP |
FIZ |
FIZPLUS |
| 7499 |
30 |
Zámbó József |
Eladó |
7698 |
1991-02-18 00:00:00 |
96000 |
300 |
| 7566 |
20 |
Kele Pál |
Vezető |
7839 |
1991-03-31 00:00:00 |
178500 |
|
| 7698 |
30 |
Lázár Vilmos |
Vezető |
7839 |
1991-04-29 00:00:00 |
171000 |
|
| 7782 |
10 |
Kalapos Jolán |
Vezető |
7839 |
1991-06-07 00:00:00 |
147000 |
|
| 7788 |
20 |
Keve Tivadar |
Elemző |
7566 |
1997-04-16 00:00:00 |
180000 |
|
| 7844 |
30 |
Titán Judit |
Eladó |
7698 |
1991-09-06 00:00:00 |
90000 |
0 |
| 7902 |
20 |
Kiss Gergő |
Elemző |
7566 |
1991-12-01 00:00:00 |
180000 |
|
l) Jelenítsük meg azon dolgozók adatait, akiknek nevében bárhol o betű szerepel!
A nevek fordított sorrendben szerepeljenek a listában!
(Név)
select nev Név from cdolgozo where nev like '%o%' order by nev DESC;
| Név |
| Zámbó József |
| Torkos Béla |
| Mór Izabella |
| Lázár Vilmos |
| Lakatos János |
| Kalapos Jolán |
| Jancsó Zoltán |
| Bútor Zoltán |
SELECT nev AS Név FROM cdolgozo WHERE nev LIKE BINARY '%o%' ORDER BY nev desc;
| Név |
| Torkos Béla |
| Lázár Vilmos |
| Lakatos János |
| Kalapos Jolán |
| Jancsó Zoltán |
| Bútor Zoltán |
m) Jelenítsük meg azon dolgozók adatait, akiknek dolgozókódja (dkod) 7839 vagy 7844 vagy 7902 vagy 7369!
(ID, Név, Fizetés)
select dkod as ID, nev as Név, fiz as Fizetés from cdolgozo where dkod in(7839,7844,7902,7369);
| ID |
Név |
Fizetés |
| 7369 |
Lakatos János |
48000 |
| 7839 |
Galamb Ödön |
300000 |
| 7844 |
Titán Judit |
90000 |
| 7902 |
Kiss Gergő |
180000 |
n) Jelenítse meg a 3 legnagyobb fizetésű dolgozó adatait!
(Név, Beosztás, Fizetés)
select nev as Név, beo as Beosztás, fiz as Fizetés from cdolgozo order by fiz DESC limit 3;
| Név |
Beosztás |
Fizetés |
| Galamb Ödön |
Elnök |
300000 |
| Keve Tivadar |
Elemző |
180000 |
| Kiss Gergő |
Elemző |
180000 |
o) Jelenítse meg a dolgozók neveit és összesített fizetését (fiz+fizplus)!
(Név,Összesített fizetés)
segítség: ifnull(fizplus,0)
select nev Név, fiz+ifnull(fizplus,0) 'Összesített fizetés' from cdolgozo;
| Név |
Összesített fizetés |
| Lakatos János |
48000 |
| Zámbó József |
96300 |
| Torkos Béla |
75500 |
| Kele Pál |
178500 |
| Mór Izabella |
76400 |
| Lázár Vilmos |
171000 |
| Kalapos Jolán |
147000 |
| Keve Tivadar |
180000 |
| Galamb Ödön |
300000 |
| Titán Judit |
90000 |
| Fenyő Réka |
66000 |
| Jancsó Zoltán |
57000 |
| Kiss Gergő |
180000 |
| Bútor Zoltán |
78000 |
p) Jelenítse meg azon dolgozók neveit, akik nem kapnak fizetéskiegészítést!
(Nem kapnak bónuszt)
SELECT nev AS 'Nem kapnak bónuszt' FROM cdolgozo WHERE fizplus IS NULL OR fizplus=0;
| Nem kapnak bónuszt |
| Lakatos János |
| Kele Pál |
| Lázár Vilmos |
| Kalapos Jolán |
| Keve Tivadar |
| Galamb Ödön |
| Titán Judit |
| Fenyő Réka |
| Jancsó Zoltán |
| Kiss Gergő |
| Bútor Zoltán |
q) Készítsen egy beosztásonkénti dolgozói névsort!
(Beosztás, Név)
select beo Beosztás, nev Név from cdolgozo order by beo, nev;
| Beosztás |
Név |
| Eladó |
Mór Izabella |
| Eladó |
Titán Judit |
| Eladó |
Torkos Béla |
| Eladó |
Zámbó József |
| Elemző |
Keve Tivadar |
| Elemző |
Kiss Gergő |
| Elnök |
Galamb Ödön |
| Ügyintéző |
Bútor Zoltán |
| Ügyintéző |
Fenyő Réka |
| Ügyintéző |
Jancsó Zoltán |
| Ügyintéző |
Lakatos János |
| Vezető |
Kalapos Jolán |
| Vezető |
Kele Pál |
| Vezető |
Lázár Vilmos |
r) Mutassa ki hány eladó szerepel a nyilvántartásban!
(Eladók száma)
select count(*) 'Eladók száma' from cdolgozo where beo = 'Eladó';
s) Állapítsa meg az ügyintézők összesített alapfizetését!
(Ügyintézők bére)
select sum(fiz) 'Ügyintézők bére' from cdolgozo where beo = 'Ügyintéző';
t) Fizikai sorrendben jelenítse meg az első 5 alkalmazott nevét!
(Név)
select nev Név from cdolgozo limit 5;
| Név |
| Lakatos János |
| Zámbó József |
| Torkos Béla |
| Kele Pál |
| Mór Izabella |
u) Állapítsa meg a dolgozók létszámát!
(Dolgozóink száma)
select count(*) 'Dolgozoink száma' from cdolgozo;
v) Kérdezze le a minimális, maximális és átlagos alapfizetés értékét!
(MinFiz,MaxFiz,ÁtlagFiz)
select min(fiz) MinFiz, max(fiz) MaxFiz, round(avg(fiz)) ÁtlagFiz from cdolgozo;
| MinFiz |
MaxFiz |
ÁtlagFiz |
| 48000 |
300000 |
124393 |
w) Számlálja meg hány dolgozó nem kap fizetési bónuszt!
(Nem kapnak bónuszt)
SELECT COUNT(*) AS 'Nem kapnak bónuszt' FROM cdolgozo WHERE fizplus IS NULL OR fizplus=0;
x) Állapítsa meg, hogy dolgozik-e a cégnél Lázár Vilmos nevű eladó!
select COUNT(*) from cdolgozo where nev='Lazar Vilmos' and beo ='Eladó';
y) Állapítsa meg a 90 eFt felett keresők létszámát!
select count(*) '90000 felett keresnek' from cdolgozo where fiz > 90000;
z) Mutassa ki, hogy ki dolgozik legrégebben a cégnél!
(Név,Napok száma)
segítség: datediff(curdate(),belep)
select nev Név, datediff(curdate(),belep) 'Napok száma' from cdolgozo order by 2 DESC limit 1;
| Név |
Napok száma |
| Lakatos János |
11628 |
generated 2022-10-15 20:09:03 by HeidiSQL 10.2.0.5723