Sunuyu indir
Sunum yükleniyor. Lütfen bekleyiniz
YayınlayanTurgay Yerlikaya Değiştirilmiş 8 yıl önce
1
GROUP BY HAVING ORDER BY İbrahim Onur Sığırcı
2
Ö RNEK 1 – G RUP F ONKSIYONLARı * «Sales» departmanında kaç kişinin çalıştığını, toplam maaşlarını, en yüksek maaşı, en düşük maaşı ve ortalama maaşı bulunuz. SELECT count(*), sum(salary), max(salary), min(salary), avg(salary) FROM department d, employee e WHERE d.dnumber = e.dno AND d.dname = ‘Sales’
3
Ö RNEK 2 – G RUP F ONKSIYONLARı * 8 numaralı departmanda çalışan işçilerin ortalama ve toplam maaşlarını bulunuz. SELECT avg(salary), sum(salary) FROM employee e WHERE e.dno = 8 avg(salary)sum(salary) 40821571500
4
Ö RNEK 2 – G RUP F ONKSIYONLARı * 8 numaralı departmanda çalışan işçilerin ortalama ve toplam maaşlarını bulunuz. SELECT avg(salary) AS ortalama, sum(salary) AS toplam FROM employee e WHERE e.dno = 8 ortalamatoplam 40821571500
5
Ö RNEK 3 – G RUP F ONKSIYONLARı * «Middleware» projesinde kaç kişinin çalıştığını ve bu çalışanların ortalama maaşlarını bulunuz. SELECT count(*) AS calisan_sayisi, avg(salary) FROM employee e, works_on w, project p WHERE e.snn = w.essn AND w.pno = p.pnumber AND p.pname = ‘Middleware’
6
GROUP BY Gruplamalar yapıp, grup fonksiyonlarını kullanmayı sağlar. codeid BLM155112501105 BLM155115011607 BLM155112011031 BLM154112011031 BLM154112011067 EEM250112501105 BLM356115011607 EEM458112011067 EEM458113011705 SELECT count(*) FROM take GROUP BY code codeid BLM155112501105, 15011607, 12011031 BLM154112011031, 12011067 EEM250112501105 BLM356115011607 EEM458112011067, 13011705
7
GROUP BY codeid BLM155112501105 BLM155115011607 BLM155112011031 BLM154112011031 BLM154112011067 EEM250112501105 BLM356115011607 EEM458112011067 EEM458113011705 SELECT count(*), code FROM take WHERE code LIKE ‘BLM%’ GROUP BY code codeid BLM155112501105, 15011607, 12011031 BLM154112011031, 12011067 BLM356115011607
8
ORDER BY Sorguları belli bir sıraya göre yazdırmayı sağlar. codeid BLM155112501105 BLM155115011607 BLM155112011031 BLM154112011031 BLM154112011067 EEM250112501105 BLM356115011607 EEM458112011067 EEM458113011705 SELECT code, id FROM take WHERE id LIKE ‘12%’ ORDER BY id codeid BLM155112011031 BLM154112011031 BLM154112011067 EEM458112011067 BLM155112501105 EEM250112501105
9
ORDER BY codeid BLM155112501105 BLM155115011607 BLM155112011031 BLM154112011031 BLM154112011067 EEM250112501105 BLM356115011607 EEM458112011067 EEM458113011705 SELECT code, id FROM take WHERE id LIKE ‘12%’ ORDER BY id DESC codeid BLM155112501105 EEM250112501105 BLM154112011067 EEM458112011067 BLM155112011031 BLM154112011031
10
ORDER BY codeid BLM155112501105 BLM155115011607 BLM155112011031 BLM154112011031 BLM154112011067 EEM250112501105 BLM356115011607 EEM458112011067 EEM458113011705 SELECT code, id FROM take ORDER BY id DESC, code ASC codeid BLM155115011607 BLM356115011607 EEM458113011705 BLM155112501105 EEM250112501105 BLM154112011067 EEM458112011067 BLM154112011031 BLM155112011031
11
Ö RNEK 4 * Her bir projede çalışanların ortalama maaşını bulup proje ismine göre alfabetik olarak sıralayınız. SELECT pname, avg(salary) FROM employee e, works_on w, project p WHERE e.snn = w.essn AND w.pno = p.pnumber AND GROUP BY pname ORDER BY pname
12
Ö RNEK 5 * Her bir departmanda her bir cinsiyetten kaçar işçi olduğunu ve bu işçilerin ortalama maaşlarını bulunuz. SELECT dno, sex, count(*), avg(salary) FROM employee e GROUP BY dno, sex
13
Ö RNEK 5 * Her bir departmanda her bir cinsiyetten kaçar işçi olduğunu ve bu işçilerin ortalama maaşlarını bulunuz. SELECT dno AS departman_no, sex AS cinsiyet, count(*) AS calisan_sayisi, avg(salary) AS ortalama_maas FROM employee e GROUP BY dno, sex
14
HAVING BY Gruplama için şart eklemeye yarar. codeid BLM155112501105 BLM155115011607 BLM155112011031 BLM154112011031 BLM154112011067 EEM250112501105 BLM356115011607 EEM458112011067 EEM458113011705 SELECT code, id FROM take WHERE id LIKE ‘12%’ GROUP BY code HAVING BY count(*)=1 codeid BLM155112011031 BLM154112011031 BLM154112011067 EEM458112011067 BLM155112501105 EEM250112501105 codeid BLM155112011031, 12501105 BLM154112011031, 12011067 EEM458112011067 EEM250112501105 codeid EEM458112011067 EEM250112501105
15
Ö RNEK 6 * 5 numaralı departman dışındaki departmanlar arasından, ortalama maaşı 40000$’dan fazla olan departmanların numaralarını ve bu departmandaki ortalama maaşları bulan sorguyu yazınız. SELECT dno AS departman_no, avg(salary) AS ortalama_maas FROM employee GROUP BY dno HAVING BY avg(salary) > 40000 AND dno<>5
Benzer bir sunumlar
© 2024 SlidePlayer.biz.tr Inc.
All rights reserved.