- Back to Home »
- avg , count , Distinct , Group by , max-min , SQL , sql if-else yapısı , sum , Veritabanı , Veritabanı ders-7 »
- Veritabanı ders-7
Posted by : omerfarukkaya
15 Mart 2013 Cuma
Örnek : Mesleği Yönetim Bilişim Uzmanı olanların maaşına %10, İnsan kaynakları uzmanı olana %15, Veritabanı Uzmanına ise % 20 zam yapıp, zamlı maaş adlı alias'a atayıp ad, meslek ve maas bilgileri ile birlikte gösteren sorguyu yazınız?
SELECT ad, meslek, maas,
CASE meslek WHEN 'Yönetim Bilişim Uzmanı' THEN 1.10*maas
WHEN 'İnsan kaynakları Uzmanı' THEN 1.15*maas
WHEN 'Veritabanı Uzmanı' THEN 1.20*maas
ELSE maas END "zamlı maaş"
FROM calisanlar;
Örnek : Mesleği Yönetim Bilişim Uzmanı olanların maaşlarının aritmetik ortalamasını, en fazla maaş alanın maaşını, en düşük maaş alanın maaşını ve toplam maaşı gösteren sorguyu yazınız?
SELECT AVG(maas), MAX(maas), MIN(maas), SUM(maas)
FROM calisanlar
WHERE meslek = 'Yönetim Bilişim Uzmanı';
Örnek : Bölüm_id'si 50 olanların sayısını veren sorguyu yazınız?
SELECT COUNT(*)
FROM calisanlar
WHERE bolum_id = 50;
Örnek : Bolum_id'si tekrar eden elemanları bir defa getiren sorguyu yazınız?
SELECT DISTINCT bolum_id
FROM calisanlar;
Örnek : Bölümlere göre maaşların aritmetik ortalamaısını bulan sorguyu yazınız?
SELECT bolum_id, AVG(maas)
FROM calisanlar
GROUP BY bolum_id;
Örnek : Bölümlerdeki en yüksek maaşı bulup, bu maaşlardan da 10000'den yüksek olanları gösteren sorguyu yazınız?
SELECT bolum_id, MAX(maas)
FROM calisanlar
GROUP BY bolum_id
HAVING MAX(maas)>10000 ;
Not : HAVING, Group By'ın şartıdır