VERİTABANI ORGANİZASYONU DERSİ 2.DÖNEM 1.UYGULAMA SINAVI

id

Ad

Soyad

Yas

Cinsiyet

Şehir

Ülke

Maaş

2

Ahmet

Yılmaz

20

E

Ankara

Türkiye

2000

3

Mehmet

Efe

22

E

Bolu

Türkiye

2000

4

Ayşe

Can

23

B

İstanbul

Türkiye

5

Fatma

Ak

35

B

Ankara

Türkiye

3200

6

John

Smith

45

E

New York

USA

3000

7

Ellen

Smith

40

B

New York

USA

3500

8

Hans

Müller

30

E

Berlin

Almanya

4000

9

Frank

Cesanne

35

E

Paris

Fransa

10

Abbas

Demir

26

E

Adana

Türkiye

2000

11

Hatice

Topçu

26

B

Hatay

Türkiye

2200

12

Gülsüm

Demir

35

B

Adana

Türkiye

2000

1.Yukarıda verilen tabloyu (PERSONEL) oluşturunuz ve verilen kayıt girişlerini yapınız.
create table personel ( id int, ad varchar(50), soyad varchar(50), yaş int, cinsiyet varchar(2), sehir varchar(50), ülke varchar(50), maaş Money )

2.Maaş alanındaki bilgilerden “Türkiye” de yaşayanlara %10 ilave eden güncellemeyi yapınız.
UPDATE personel SET maaş = maas+maaş*10/100 WHERE ülke=”türkiye”;

3.Cinsiyeti Erkek olan personelin tüm bilgilerini listeleyiniz.
SELECT * FROM personel WHERE cinsiyet=”e”;

4.Ad, Soyad, Mail alanı listeleyin. (Mail adsoyad@hotmail.com)
SELECT Ad, Soyad, Ad+Soyad + “@hotmail.com” AS Mail FROM PERSONEL;

5.Maaşı 2000 ile 3500 arasında olan personel bilgilerini listeleyiniz.
SELECT * FROM personel WHERE maaş between 2000 and 3500;

6.Maaşı 2000,3000 ve 4000 olan personel bilgilerini listeleyiniz.
SELECT * FROM personel WHERE maaş in (2000,3000,4000);

7.Maaş bilgisi girilmeyen kayıtların ad,soyad,ülke bilgilerini listeleyiniz.
SELECT ad, soyad, ülke FROM personel WHERE maaş Is Null;

8.İsmi “A” ile başlayan kayıtların tüm bilgilerini listeleyiniz.
SELECT * FROM personel WHERE ad Like ‘A*’;

9.Personel ad,soyad,ülke ve maaş bilgilerini yaş bilgisine göre küçükten büyüğe sıralayınız.
SELECT ad, soyad, ülke, maaş FROM personel ORDER BY yaş ASC;

10.Ad alanı küçük, Soyad alanı büyük harf olacak şekilde maaş bilgisiyle listeleyin.
SELECT LCase(Ad) AS isim, UCase(Soyad) AS soyisim, Maas FROM PERSONEL;

11.Çalışanların kaç kişi olduğunu ve yaş ortalamasını bulun ve Sayı, Yaş_Ortalaması başlığı ile yazdırınız.
SELECT COUNT(Ad) AS Sayı, AVG(Yas) AS Yas_Ortalaması FROM PERSONEL;

12.Boş maaş alanlarına 2500 kayıt bilgisi güncellemesi yapınız.
UPDATE PERSONEL SET Maas = 2500 WHERE Maas IS NULL;

13.En yüksek ve en düşük maaş bilgilerini yan yana listeleyiniz.
SELECT MAX(Maas) AS [En yüksek Maaş], MIN(Maas) AS [En düşük Maaş] FROM PERSONEL;

14.Toplam kaç adet kayıt olduğunu listeleyiniz.
SELECT COUNT(id) AS [“Toplam Kayıt”] FROM PERSONEL;

15.Toplam ödenen maaş miktarını bulun ve gösterin.
SELECT Sum(Maas) AS ToplamÖdenenMaas FROM PERSONEL;

16.Ülkeye göre gruplama yaparak hangi ülkeden kaç kişi olduğunu listeleyiniz.
SELECT Ülke, Count(*) AS KisiSayısı FROM PERSONEL GROUP BY Ülke;

17.Ülke ve yaşa göre 30 yaş üstü personelin kaç kişi olduğunu listeleyiniz.
SELECT ülke, count(*) AS sayı FROM PERSONEL WHERE yas>30 GROUP BY ülke;

18.Cinsiyete göre yaş ortalamalarını ve kişi sayısını gösteren listelemeyi yapınız.
SELECT cinsiyet, avg(yas) AS yasort, count(*) AS sayı FROM PERSONEL GROUP BY cinsiyet;

19.Ülkeye göre maaş ortalamalarını , cinsiyet ve sayıları ile birlikte listeleyiniz.
SELECT ülke, cinsiyet, avg(maaş) AS maaşort, count(*) AS sayı FROM PERSONEL GROUP BY ülke, cinsiyet;

20.Ülke ve maaş ortalamalarını,cinsiyeti E olan ve personel sayısı 2 den küçük olanları listeleyiniz.
SELECT ULKE, AVG(MAAS) AS MAAS_ORT FROM PERSONEL WHERE CINSIYET=”E” GROUP BY ULKE HAVING COUNT(*)<2;

Pin It on Pinterest