--1. Bilişim Teknolojileri Bölümündeki Öğrencilerden ismi 3 karakterden oluşanların sadece adlarını ve soyadlarını listeleyen SQL kodunu yazınız. select Ogrenci_Adı,Ogrenci_Soyadı from Ogrenci inner join Bolum on Ogrenci.Bolum_id=Bolum.Bolum_id where Bolum_Adı='Bilişim Teknolojileri' --2. Adının 3. Harfi t olan öğrencileri ve bölümlerini listeleyen SQL kodunuz yazınız. select * from Ogrenci inner join Bolum on Ogrenci.Bolum_id=Bolum.Bolum_id where Ogrenci_Adı Like '__t%' --3. 3 öğrenciden fazla öğrencisi olan bölümlerin adlarını ve bu bölümlerde kaçar öğrenci olduğunu listeleyen SQL kodunu yazınız. select Bolum.Bolum_Adı,COUNT(Ogrenci_id) from Ogrenci inner join Bolum on Bolum.Bolum_id=Ogrenci.Bolum_id group by Bolum_Adı having COUNT(Ogrenci_id)>3 --4. Kodu M2000 olan bölümün öğrencilerini gösteren SQL kodunu yazınız. select * from Ogrenci inner join Bolum on Ogrenci.Bolum_id=Bolum.Bolum_id where Bolum_Kodu='M2000' --5. Veri tabanı dersinde en yüksek not alan öğrencinin tüm ders notlarını listeleyen SQL kodunu yazınız. select MAX(DersNot) from Ogrenci_Ders inner join Ders on Ders.Ders_id=Ogrenci_Ders.Ders_id where Ogrenci_id in(select Ogrenci_id from Ogrenci_Ders where DersNot in(select max(DersNot) from Ogrenci_Ders where Ders_id in(select Ders_id from Ders where Ders_Adı='veri tabanı'))) group by Ders_Adı --6. Soyadı Türk olan öğretmenin dersine girdiği öğrenci sayısını getiriniz. select COUNT(Ogrenci.Ogrenci_id) from Ogretmen inner join Ogretmen_Ders on Ogretmen.Ogretmen_id=Ogretmen_Ders.Ogretmen_id inner join Ders on Ders.Ders_id=Ogretmen_Ders.Ders_id inner join Ogrenci_Ders on Ders.Ders_id=Ogrenci_Ders.Ders_id inner join Ogrenci on Ogrenci.Ogrenci_id=Ogrenci_Ders.Ogrenci_id where Ogretmen_Soyadı='türk' --7. Bölümde 2 den fazla öğretmeni olan bölümleri ve bu bölümlerde kaçar öğretmen olduğunu listelen SQL kodunu yazınız. select Bolum.Bolum_Adı,COUNT(Ogretmen_id) from Ogretmen inner join Bolum on Bolum.Bolum_id=Ogretmen.Bolum_id group by Bolum_Adı having COUNT(Ogretmen_id)>2 --8. Veri tabanı dersinin ortalamasından daha yüksek not alan öğrencilerin adını soyadını ve aldıkları notları getiriniz. select Ogrenci_Adı,Ogrenci_Soyadı,DersNot from Ogrenci inner join Ogrenci_Ders on Ogrenci.Ogrenci_id=Ogrenci_Ders.Ogrenci_id inner join Ders on Ders.Ders_id=Ogrenci_Ders.Ders_id where Ders_Adı='Veri tabanı' and DersNot>(select AVG(DersNot) from Ogrenci_Ders) --9. Not ortalaması en yüksek ilk 3 öğrenciyi listeleyen SQL kodunu yazınız. select top 3 * from Ogrenci order by Ogrenci_NotOrtalaması desc --10. İsmi 3 karakterden fazla olan Kimya Teknolojileri Bölümündeki Öğrencilerin isimlerini ve not ortalamalarını gösteren SQL kodunu yazınız. select * from Ogrenci inner join Bolum on Bolum.Bolum_id=Ogrenci.Bolum_id where Ogrenci_Adı LIKE '____%' and Bolum_Adı='Kimya Teknolojileri' --11. En kıdemsiz öğretmeni ve bölümünü ve o bölümdeki toplam öğrenci sayısını gösteren SQL kodunu yazınız. select top 1 Bolum.Bolum_Adı,COUNT(Ogrenci_id) from Ogretmen inner join Bolum on Bolum.Bolum_id=Ogretmen.Bolum_id inner join Ogrenci on Ogrenci.Bolum_id=Bolum.Bolum_id group by Bolum_Adı order by MIN(Ogretmen_KıdemYılı) --12. Bilişim Teknolojileri Bölümünde not ortalaması 70’ten az olan öğrencileri listeleyen SQL kodunu yazınız. select * from Ogrenci inner join Bolum on Bolum.Bolum_id=Ogrenci.Bolum_id where Bolum_Adı='Bilişim Teknolojileri' and Ogrenci_NotOrtalaması<70 --13. Kimya Teknolojileri Bölümündeki Öğretmenlerden kıdem yılı tüm öğretmenlerin kıdem yılı ortalamasından fazla olanlarını gösteren SQL kodunu yazınız. select * from Ogretmen inner join Bolum on Ogretmen.Bolum_id=Bolum.Bolum_id where Bolum_Adı='Kimya Teknolojileri' and Ogretmen_KıdemYılı>(select avg(Ogretmen_KıdemYılı) from Ogretmen) --14. Not ortalaması en düşük olan öğrencinin adı, soyadı ve not ortalaması bilgilerini listeleyen SQL kodunu yazınız. select top 1 Ogrenci_Adı,Ogrenci_Soyadı,Ogrenci_NotOrtalaması from Ogrenci group by Ogrenci_Adı,Ogrenci_Soyadı,Ogrenci_NotOrtalaması order by min(Ogrenci_NotOrtalaması) --15. Doğum yeri İstanbul olan öğretmenlerin anlattığı dersleri ve anlattığı dersleri alan öğrenci sayısını gösteren SQL kodunu yazınız. select * from Ogretmen inner join Ogretmen_Ders on Ogretmen.Ogretmen_id=Ogretmen_Ders.Ogretmen_id inner join Ders on Ders.Ders_id=Ogretmen_Ders.Ders_id inner join Ogrenci_Ders on Ders.Ders_id=Ogrenci_Ders.Ders_id inner join Ogrenci on Ogrenci.Ogrenci_id=Ogrenci_Ders.Ogrenci_id where Ogretmen_Dogumyeri='istanbul' --16. Kıdem yılı 10-20 yıl arasında olan Bilişim Teknolojileri Bölümü öğretmenlerini listeleyen SQL kodunu yazınız. select * from Ogretmen inner join Bolum on Ogretmen.Bolum_id=Bolum.Bolum_id where Ogretmen_KıdemYılı between 10 and 20 and Bolum_Adı='Bilişim Teknolojileri' --17. Kıdem yılı tüm öğretmenlerin kıdem yılı ortalamasından daha düşük olan öğretmenlerin bilgilerini listeleyen SQL kodunu yazınız. select * from Ogretmen inner join Bolum on Ogretmen.Bolum_id=Bolum.Bolum_id where Ogretmen_KıdemYılı>(select avg(Ogretmen_KıdemYılı) from Ogretmen) --18. Kimya Teknolojileri Bölümündeki Öğrencilerin tüm bilgilerini listeleyen SQL kodunu yazınız. select * from Ogrenci inner join Bolum on Ogrenci.Bolum_id=Bolum.Bolum_id where Bolum_Adı='Kimya Teknolojileri' --19. Dersine girdiği öğrenci sayısı 3’den fazla olan öğretmenlerin adını ve dersine girdikleri öğrencilerin sayısını getiriniz. select Ogretmen_Adı,Ogretmen_Soyadı,COUNT(Ogrenci.Ogrenci_id) from Ogretmen inner join Ogretmen_Ders on Ogretmen.Ogretmen_id=Ogretmen_Ders.Ogretmen_id inner join Ders on Ders.Ders_id=Ogretmen_Ders.Ders_id inner join Ogrenci_Ders on Ders.Ders_id=Ogrenci_Ders.Ders_id inner join Ogrenci on Ogrenci.Ogrenci_id=Ogrenci_Ders.Ogrenci_id group by Ogretmen_Adı,Ogretmen_Soyadı having COUNT(Ogrenci.Ogrenci_id)>3 --20. Direk olarak dersin notunun ortalaması (Genel not ortalaması değil) 70’den yüksek olan derslerin adını ve not ortalamasını getiriniz. (Veritabanı 73, NTP 68 dersek sadece 73 olan Veritabanı gelir) select Ders_Adı,AVG(DersNot) from Ogrenci_Ders inner join Ders on Ogrenci_Ders.Ders_id=Ders.Ders_id group by Ders_Adı having AVG(DersNot)>70