SORU 14: Departman sayısı
#1
Patron hanım maaşlara daldı bu aralar, ama birden aklına şu soru takıldı.
Şirkette aktif kaç departman var ve bu departmanların isimleri ne?



  Alıntı
Bu mesajı beğenenler:
#2
Aktif derken?



  Alıntı
Bu mesajı beğenenler:
#3
Atıyorum, şirkette pazarlama bölümü de vardır ama, hiç personeli yoktur. Bunu listelemesin gibi.



  Alıntı
Bu mesajı beğenenler:
#4
Sorunun gelişini tam anlayamadım. Maaşdan girdik departmandan çıktık.
Aşağıdaki sorgu departmanlarda kaç kişi var ve toplam maaşları nedir gösteriyo (çalışan sayısı 0'sa listelemez)

Kod:
SELECT personel.DepartmanNo, departman.Departman, Count(personel.PersonelNo) AS Calısan, Sum(personel.Maas) AS ToplaMaas
FROM departman INNER JOIN personel ON departman.DepartmanNo = personel.DepartmanNo
GROUP BY personel.DepartmanNo, departman.Departman
HAVING (((Count(personel.PersonelNo))>0));

Ama kaç tane departman var dediğiniz kısımdan kastınızı karıştırdım sanırım?



  Alıntı
Bu mesajı beğenenler:
#5
Aslında ilk etapta aktif departman listesini sormuştum. Çalışan kişi sayısı ve toplam maaşları sonradan gelecekti. Neyse.
Biraz hızlı gidelim bari.

Sadece departman listesi sorgusu ise:

Kod:
SELECT personel.DepartmanNo, departman.Departman
FROM departman INNER JOIN personel ON departman.DepartmanNo = personel.DepartmanNo
GROUP BY personel.DepartmanNo, departman.Departman;

veya

Kod:
SELECT DISTINCT personel.DepartmanNo, departman.Departman
FROM departman INNER JOIN personel ON departman.DepartmanNo = personel.DepartmanNo



  Alıntı
Bu mesajı beğenenler:
#6
Kod:
SELECT personel.DepartmanNo, departman.Departman, Count(personel.PersonelNo) AS Calısan, Sum(personel.Maas) AS ToplaMaas
FROM departman INNER JOIN personel ON departman.DepartmanNo = personel.DepartmanNo
GROUP BY personel.DepartmanNo, departman.Departman
HAVING (((Count(personel.PersonelNo))>0));
union
Select "Toplam" as DepartmanNo,"Departman" as Departman ,"Sayisi" as  Calisan, Count(*) as  ToplaMaas  from departman where departmanno in (
SELECT personel.DepartmanNo
FROM personel
GROUP BY personel.DepartmanNo
HAVING (((Count(personel.PersonelNo))>0)));

Tam anlamamıştım ama bu da üstteki sorguyla birleşerek toplam departman sayısını yazar



  Alıntı
Bu mesajı beğenenler:


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  SORU 26: Rastgele isim (Çekiliş) beab05 29 16.438 05-08-2019, 21:43
Son Mesaj: halily
  SORU 11: 2. Harfe Göre Personel Bulmak beab05 13 15.554 11-02-2019, 13:18
Son Mesaj: dsezgin
  SORU 27: İLLERE GÖRE PERSONEL VE MAAŞ TOPLAMI gitarisyen 8 7.602 25-02-2014, 10:17
Son Mesaj: mesut58580
  SORU 37: Adı H ile başlayan Soyadı K ile bitenler onur_can 0 3.276 18-02-2014, 01:03
Son Mesaj: onur_can
  SORU 36: Maaşı Belli aralıkta olanları Listeleme onur_can 0 1.856 18-02-2014, 01:00
Son Mesaj: onur_can
  SORU 30: En yüksek N'inci maaş beab05 11 7.582 19-11-2013, 16:15
Son Mesaj: armane
  SORU 22:Kendi çalıştığı departmanın ortalamasının üzerinde maaşı olanlar yeni54 11 7.528 08-06-2013, 17:59
Son Mesaj: irfn
  SORU 17: PARAMETREYLE MAAŞLARI SORGULAMAK gitarisyen 4 4.608 14-04-2013, 15:03
Son Mesaj: hturkavci03

Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar):