Bu sayfa bir sorgu arama sihirbazıdır. Ayrıca çok sayıda sql sorgu örnekleri içermektedir. Sorgunuzda bulunmasını istediğiniz ifadeleri yukarıdaki arama panelinden işaretleyerek arama yapabilirsiniz. İki türlü arama mevcut isterseniz sadece seçtiğiniz ifadeler yer alır. İsterseniz seçtiğiniz ifadeler mutlaka yer almak üzere diğer sql ifadeleri de sorgunuzda bulunabilir. Sorguların cevapları kütüphane veritabanında çözüldü. Diyagmı sol alt köşeden tıklayarak inceleyebilirsiniz.1600 kitap 500 den fazla yazardan oluşan Tamamen Türkçe kütüphane veritabanını bu linke tıklayarak indirebilirsiniz.

SQL Select Örnekleri

1-) Tüm öğrencileri listeleyiniz.

Çözüm 1)

Select * from ogrenci


ETİKETLER

Select -
2-) Tüm kitapları listeleyiniz.

Çözüm 1)

Select * from kitap


ETİKETLER

Select -
3-) Adı Bill olan öğrencileri listeleyiniz.

Çözüm 1)

Select * from ogrenci 
       where ad = 'Bill'


ETİKETLER

Select - Where -
4-) Adı a harfi ile başlayan öğrenciler listelensin

Çözüm 1)

Select * from ogrenci 
       where ad like 'a%'


ETİKETLER

Select - Where - Like -
5-) Adı a harfi ile biten öğrenciler listelensin?

Çözüm 1)

Select * from ogrenci 
       where ad like '%a'


ETİKETLER

Select - Where - Like -
6-) Adının içinde a harfi geçen kitapları listeleyiniz.

Çözüm 1)

Select * from ogrenci 
       where ad like '%a%'


ETİKETLER

Select - Where - Like -
7-) Sayfa sayısı alanında 5 rakamı geçen kitapları listeleyiniz.

Çözüm 1)

Select * from kitap 
       where kitapno like '%1%'


ETİKETLER

Select - Where - Like -
8-) Adının baştan ikinci harfi a olan öğrencileri listeleyiniz.

Çözüm 1)

Select * from ogrenci 
        where ad like '_a%'


ETİKETLER

Select - Where - Like -
9-) Adının sondan ikinci harfi a olan öğrencileri listeleyiniz.

Çözüm 1)

Select * from ogrenci 
       where ad like '%a_'


ETİKETLER

Select - Where - Like -
10-) Öğrenci numarası 20 ile 30 arasında olan öğrencileri listeleyiniz

Çözüm 1)

Select * from ogrenci 
       where ogrno<= 20 and ogrno< 30

Çözüm 2)

Select * from ogrenci 
       where ogrno between 20 and 30


ETİKETLER

Select - Where - Between - Çoklu Şart -
11-) Adı Suna olup soyadında a harfi olmayan öğrencilerin bilgilerini listeleyiniz.

Çözüm 1)

select * from ogrenci 
     where ad= 'Suna' and soyad not like '%a%'


ETİKETLER

Select - Where - Like - Çoklu Şart -
12-) Adı Ali veya Ayşe olan numarası 30 dan az olan öğrencilerin bilgilerini listeleyiniz.

Çözüm 1)

select * from ogrenci 
     where (ad='Ali' or ad= 'Ayşe') and ogrno <30

Çözüm 2)

Select * from ogrenci 
     where ad='Ali' and ogrno <30 or ad='Ayşe' and ogrno <30

Çözüm 3)

Select * from ogrenci 
     where ad in('Ali','Ayşe') and ogrno<30


ETİKETLER

Select - Where - Parantez - Çoklu Şart -
13-) Öğrencilerin Adını ve soyadını birleştirip tek bir kolonda listeleyiniz

Çözüm 1)

Select ad + soyad from ogrenci

Çözüm 2)

Select ad + soyad as ns from ogrenci

Çözüm 3)

Select ad + ' ' + soyad as ns from ogrenci


ETİKETLER

Select - Takma Ad -
14-) Kitap numarası 3,4,8,9,11,23 olan kitapları listeleyiniz.

Çözüm 1)

Select * from kitap 
       where kitapno in(3,4,8,9,11,23)

Çözüm 2)

Select * from books 
    where kitapno = 3 or
	      kitapno = 4 or 
		  kitapno = 8 or 
		  kitapno = 9 or 
		  kitapno =11 or 
		  kitapno = 23


ETİKETLER

Select - Where -
15-) Sayfa sayısı çift olan kitapları listeleyiniz.

Çözüm 1)

Select * from kitap 
       where kitapno % 2 = 0


ETİKETLER

Select - Where -
16-) Adı Sinan olup soyadında a olmayan ogrenciler

Çözüm 1)

select * from ogrenci 
       where ad = 'Sinan' and soyad not like '%a%'

Çözüm 2)

select * from ogrenci 
       where ad = 'Sinan' and not soyad like '%a%'


ETİKETLER

Select - Where - Çoklu Şart -
17-) Adı Kemal veya Suna olan numarası 30 dan az olan öğrenciler

Çözüm 1)

select * from ogrenci 
	where ("Kemal" or "Suna") and ogrno<30

Çözüm 2)

select * from ogrenci 
	where ad='Kemal' and ogrno<30 or 
	      ad='Suna' and ogrno<30


ETİKETLER

Select - Where - Parantez - Çoklu Şart -
18-) Öğrenci Numarası 1,7,11,17 olan öğrenciler listelensin

Çözüm 1)

select * from ogrenci 
	where ogrno=1 or ogrno=7 or 
		  ogrno=11 or ogrno=17

Çözüm 2)

select * from student 
     where ogrno in (1,7,11,17)


ETİKETLER

Select - Where -
19-) Numarası tek sayı olan öğrenciler

Çözüm 1)

Select * from ogrenci 
        where ogrno % 2 = 1


ETİKETLER

Select - Where -
20-) Öğrenci numarası tek olan adı a harfi ile başlayan öğrenciler

Çözüm 1)

Select * from student 
       where ad like 'a%' and ogrno % 2 = 1


ETİKETLER

Select - Where - Çoklu Şart -
21-) Tüm öğrencileri adına göre sıralı olarak listeleyiniz

Çözüm 1)

Select * from ogrenci 
       order by ad

Çözüm 2)

Select * from ogrenci 
       order by 2


ETİKETLER

Select - Order By -
22-) Erkek öğrencileri adına göre sıralı olarak listeleyiniz?

Çözüm 1)

Select * from ogrenci 
       where cinsiyet = 'E' 
       order by ad

Çözüm 2)

Select * from ogrenci 
       where cinsiyet = 'E' 
       order by 2


ETİKETLER

Select - Where - Order By -
23-) Öğrencileri adına göre tersten sıralayınız.

Çözüm 1)

Select * from ogrenci 
       order by ad desc


ETİKETLER

Select - Order By -
24-) Öğrencileri önce sınıflarına göre, sınıfları aynı olanları adına göre sıralayarak listeleyiniz.

Çözüm 1)

Select * from ogrenci 
       order by sinif,cinsiyet


ETİKETLER

Select - Order By -
25-) Tüm Öğrencileri karışık sıralı olarak listeleyiniz.

Çözüm 1)

Select * from ogrenci 
       order by newid()


ETİKETLER

Select - Order By -
26-) Erkek öğrencileri karışık sıralı olarak listeleyiniz.

Çözüm 1)

Select * from ogrenci 
       where cinsiyet = 'E' 
       order by newid()


ETİKETLER

Select - Where - Order By -
27-) 10A sınıfının erkek öğrencilerini karışık olarak listeleyiniz

Çözüm 1)

select * from ogrenci 
	where sinif='10A' and cinsiyet='E' 
	order by newid()


ETİKETLER

Select - Where - Order By -
28-) Rasgele seçilmiş 3 tane öğrenci listeleyiniz.

Çözüm 1)

Select top 3 * from ogrenci 
       order by newid()


ETİKETLER

Select - Top - Order By -
29-) 10A sınıfından rasgele 1 öğrenci listeleyiniz?

Çözüm 1)

Select top 1 * from ogrenci 
	where sinif= '10A' 
	order by newid()


ETİKETLER

Select - Top - Where - Order By -
30-) 10A sınıfından rasgele seçilmiş bir kız öğrenci listeleyiniz.

Çözüm 1)

Select top 1 * from ogrenci 
	where sinif= '10A' and cinsiyet= 'K' 
	order by newid()


ETİKETLER

Select - Top - Where - Order By - Çoklu Şart -
31-) Sayfasayısı en fazla olan kitabı listeleyiniz.

Çözüm 1)

Select top 1 * from kitap 
       order by sayfaSayisi desc

Çözüm 2)

Select * from kitap 
     where sayafaSayisi=(Select max(sayfaSayisi) from kitap)


ETİKETLER

Select - Top - Where - Order By - Alt Sorgu - Toplam Fonksiyonları -
32-) Yaşı en fazla olan öğrenciyi listeleyiniz

Çözüm 1)

Select * from ogrenci 
       order by dtarih


ETİKETLER

Select - Order By -
33-) Tüm yazarları öğrenci tablosuna ekleyiniz.

Çözüm 1)

Insert into ogrenci(ad,soyad) 
	Select ad,soyad from yazar


ETİKETLER

Select - Insert -
34-) 9B sınıfının erkek öğrencilerini yazarlar tablosuna ekleyiniz.

Çözüm 1)

Insert into yazar(ad,soyad) 
       select ad,soyad from ogrenci
              where sinif='9A' and cinsiyet='E'

Çözüm 2)

Insert into yazar 
       select ad,soyad from ogrenci 
              where sinif='9A' and cinsiyet='E'


ETİKETLER

Select - Insert - Where -
35-) Tüm öğrencilerin adını soyadını ve kitap aldığı tarihi listeleyiniz?

Çözüm 1)

Select ad,soyad,atarih from ogrenci,islem 
       where ogrenci.ogrno = islem.ogrno

Çözüm 2)

Select ad,soyad,atarih from ogrenci 
       join islem on ogrenci.ogrno = islem.ogrno


ETİKETLER

Select - Join - Where - Çoklu Tablo -
36-) Tüm öğrencilerin adını soyadını,aldığı kitabın adını ve kitap aldığı tarihi listeleyiniz?

Çözüm 1)

Select ogrenci.ad,ogrenci.soyad,kitap.ad,atarih 
       from ogrenci,islem,kitap 
       where ogrenci.ogrno = islem.ogrno and 
                  kitap.kitapno = islem.kitapno

Çözüm 2)

Select ogrenci.ad,ogrenci.soyad,kitap.ad,atarih from ogrenci 
       join islem on ogrenci.ogrno = islem.ogrno 
       join kitap on kitap.kitapno = islem.kitapno


ETİKETLER

Select - Join - Where - Çoklu Tablo -
37-) Tüm öğrencilerin adını soyadını,aldığı kitabın adını,kitap aldığı tarihi ve kitabın türünü listeleyiniz?

Çözüm 1)

Select ogrenci.ad as OgrenciAd,
	   ogrenci.soyad,kitap.ad as KitapAd,
	   atarih,tur.ad as TurAd 
from ogrenci,islem,kitap,tur 
where ogrenci.ogrno = islem.ogrno and 
	  kitap.kitapno = islem.kitapno and 
	  kitap.turno = tur.turno

Çözüm 2)

Select ogrenci.ad as studentName,
	   ogrenci.soyad,kitap.ad as BookName,
	   atarih,tur.ad as TypeName 
from ogrenci 
join islem on ogrenci.ogrno = islem.ogrno 
join kitap on kitap.kitapno = islem.kitapno
join tur on kitap.turno = tur.turno


ETİKETLER

Select - Join - Where - Çoklu Tablo -
38-) Tüm öğrencilerin adını soyadını,aldığı kitabın adını,kitap aldığı tarihi,kitabın türünü ve yazarının adını ve soyadını listeleyiniz?

Çözüm 1)

Select ogrenci.ad as studentName,
	   ogrenci.soyad,kitap.ad as BookName,
	   atarih,tur.ad as TypeName, 
	   yazar.ad as AuthorName, yazar.soyad as AuthorSurad 
from ogrenci 
join islem on ogrenci.ogrno = islem.ogrno 
join kitap on kitap.kitapno = islem.kitapno
join tur on kitap.turno = tur.turno
join yazar on yazar.yazarno = kitap.yazarno

Çözüm 2)

Select ogrenci.ad as studentName,ogrenci.soyad,
           kitap.ad as BookName,atarih,tur.ad as TypeName ,
           yazar.ad as AuthorName,yazar.soyad as AuthorSurad 
from ogrenci, islem, kitap, tur, yazar 
where ogrenci.ogrno = islem.ogrno and 
           kitap.kitapno = islem.kitapno and 
           kitap.turno = tur.turno and  
           yazar.yazarno = kitap.yazarno


ETİKETLER

Select - Join - Where - Çoklu Tablo -
39-) 11B sınıfının öğrencilerinin adını soyadını,aldığı kitabın adını ve kitap aldığı tarihi listeleyiniz?

Çözüm 1)

Select ogrenci.ad as ogrenciAd, ogrenci.soyad,
	   kitap.ad as KitapAd,atarih
from ogrenci,islem,kitap,tur,yazar 
where ogrenci.ogrno = islem.ogrno and 
	  kitap.kitapno = islem.kitapno and sinif='11B'

Çözüm 2)

Select ogrenci.ad as ogrenciAd,ogrenci.soyad,
	   kitap.ad as kitapAd,atarih
from ogrenci 
join islem on ogrenci.ogrno = islem.ogrno 
join kitap on kitap.kitapno = islem.kitapno 
where sinif='11B'


ETİKETLER

Select - Join - Where - Çoklu Tablo -
40-) 11B sınıfının kız öğrencilerinin adını soyadını,aldığı kitabın adını ve kitap aldığı tarihi listeleyiniz?

Çözüm 1)

Select ogrenci.ad as studentName,ogrenci.soyad,
	   kitap.ad as BookName,atarih
from ogrenci, islem, kitap, tur, yazar 
where ogrenci.ogrno = islem.ogrno and 
	  kitap.kitapno = islem.kitapno and 
	  sinif='11B' and cinsiyet='F'

Çözüm 2)

Select ogrenci.ad as studentName,ogrenci.soyad,
	   kitap.ad as BookName,atarih
from ogrenci 
join islem on ogrenci.ogrno = islem.ogrno 
join kitap on kitap.kitapno = islem.kitapno 
where sinif='11B' and cinsiyet='F'


ETİKETLER

Select - Join - Where - Çoklu Şart - Çoklu Tablo -
41-) "Dram" türünde kitap yazan yazarların adını, soyadını ve yazdığı kitabın adını listeleyiniz.

Çözüm 1)

Select yazar.ad, yazar.soyad, kitap.ad as bookName from yazar 
join kitap on yazar.yazarno = kitap.yazarno 
join tur on tur.turno = kitap.turno 
where tur.ad = 'Dram'

Çözüm 2)

Select yazar.ad, yazar.soyad, kitap.ad as bookName 
from yazar, kitap, tur
where yazar.yazarno = kitap.yazarno and  
	  tur.turno = kitap.turno and 
	  tur.ad = 'Dram'


ETİKETLER

Select - Join - Where - Çoklu Şart - Çoklu Tablo -
42-) Sayfa sayısı 300 den fazla olan kitapların adını ve yazar bilgilerini listeleyiniz.

Çözüm 1)

Select kitap.ad as bookName, yazar.ad, yazar.soyad 
from yazar 
join kitap on yazar.yazarno = kitap.yazarno 
where sayfasayisi >300

Çözüm 2)

Select yazar.ad, yazar.soyad, kitap.ad as bookName 
from yazar,kitap
where yazar.yazarno = kitap.yazarno and sayfasayisi >300


ETİKETLER

Select - Join - Where - Çoklu Şart - Çoklu Tablo -
43-) Peyami Safa isimli yazarın kitabını okuyan öğrenciler

Çözüm 1)

Select distinct ogrenci.* from ogrenci 
join islem on ogrenci.ogrno = islem.ogrno
join kitap on kitap.kitapno = islem.kitapno
join yazar on yazar.yazarno = kitap.yazarno  
where yazar.ad = 'Peyami' and yazar.soyad = 'Safa'

Çözüm 2)

Select distinct ogrenci.* 
from ogrenci, islem, kitap, yazar
where ogrenci.ogrno = islem.ogrno and 
	  kitap.kitapno = islem.kitapno and 
	  yazar.yazarno = kitap.yazarno and 
	  yazar.ad = 'Peyami' and yazar.soyad = 'Safa'


ETİKETLER

Select - Join - Where - Çoklu Şart - Çoklu Tablo -
44-) 10A sınıfından Yahya Kemal isimli yazarın kitabını okuyan öğrenciler

Çözüm 1)

Select distinct ogrenci.* from ogrenci 
join islem on ogrenci.ogrno = islem.ogrno
join kitap on kitap.kitapno = islem.kitapno
join yazar on yazar.yazarno = kitap.yazarno  
where yazar.ad = 'Yahya' and yazar.soyad = 'Kemal' and sinif = '10A'

Çözüm 2)

Select distinct ogrenci.* 
from ogrenci, islem, kitap, yazar
where ogrenci.ogrno = islem.ogrno and 
      kitap.kitapno = islem.kitapno and 
	  yazar.yazarno = kitap.yazarno and 
	  yazar.ad = 'Yahya' and yazar.soyad = 'Kemal' and 
	  sinif = '10A'


ETİKETLER

Select - Join - Where - Çoklu Şart - Alt Sorgu - Çoklu Tablo -
45-) Tüm kitapların sayısını listeleyiniz.

Çözüm 1)

Select count(*) from kitap

Çözüm 2)

Select count(kitapno) from kitap


ETİKETLER

Select - Toplam Fonksiyonları -
46-) Tüm öğrencilerin sayısını listeleyiniz.

Çözüm 1)

Select count(*) from ogrenci

Çözüm 2)

Select count(ogrno) from ogrenci


ETİKETLER

Select - Toplam Fonksiyonları -
47-) Tüm kitapların toplam sayfa sayısını listeleyiniz.

Çözüm 1)

Select sum(sayfasayisi) from kitap


ETİKETLER

Select - Toplam Fonksiyonları -
48-) Tüm öğrencilerin toplam puanını listeleyiniz.

Çözüm 1)

Select sum(puan) from ogrenci


ETİKETLER

Select - Toplam Fonksiyonları -
49-) Bütün öğrencilerin puanlarının ortalamasını kaçtır.

Çözüm 1)

Select avg(puan) from ogrenci


ETİKETLER

Select - Toplam Fonksiyonları -
50-) Sayfa sayısı sütunun en az değeri kaçtır.

Çözüm 1)

Select min(sayfasayisi) from kitap


ETİKETLER

Select - Toplam Fonksiyonları -
51-) Kitap tablosunda en fazla puan kaçtır.

Çözüm 1)

Select max(puan) from kitap


ETİKETLER

Select - Toplam Fonksiyonları -
52-) Tüm kitapların sayfa sayısının ortalaması kaçtır.

Çözüm 1)

Select avg(sayfasayisi) from kitap


ETİKETLER

Select - Toplam Fonksiyonları -
53-) 9B sınıfının toplam puanını listeleyiniz.

Çözüm 1)

Select count(*) from ogrenci 
       where sinif = '9B'


ETİKETLER

Select - Where - Toplam Fonksiyonları -
54-) Romance türündeki kitapların toplam sayfa sayısını listeleyiniz.

Çözüm 1)

Select sum(sayfasayisi) from kitap 
join tur on tur.turno = kitap.turno 
where tur.ad = 'Romance'


ETİKETLER

Select - Join - Where - Toplam Fonksiyonları - Çoklu Tablo -
55-) Gerilim türündeki toplam kitap sayısını listeleyiniz.

Çözüm 1)

Select count(*) from kitap 
join tur on tur.turno = kitap.turno 
where tur.ad = 'Gerilim'


ETİKETLER

Select - Join - Where - Toplam Fonksiyonları - Çoklu Tablo -
56-) Deneme türündeki kitapların sayfa sayılarının ortalaması kaçtır.

Çözüm 1)

Select avg(sayfasayisi) from kitap 
join tur on tur.turno = kitap.turno 
where tur.ad = 'Deneme'


ETİKETLER

Select - Join - Where - Toplam Fonksiyonları - Çoklu Tablo -
57-) Kemal Tahir isimli yazarın kitaplarının toplam sayfa sayısı kaçtır.

Çözüm 1)

Select sum(sayfasayisi) from kitap 
join yazar on yazar.yazarno = kitap.yazarno 
where yazar.ad = 'Kemal' and yazar.soyad = 'Tahir'


ETİKETLER

Select - Join - Where - Toplam Fonksiyonları - Çoklu Tablo -
58-) Aziz Nesin isimli yazarın kitaplarının toplam puanı kaçtır.

Çözüm 1)

Select sum(puan) from kitap 
join yazar on yazar.yazarno = kitap.yazarno 
where yazar.ad = 'Aziz' and yazar.soyad = 'Nesin'


ETİKETLER

Select - Join - Where - Çoklu Şart - Toplam Fonksiyonları - Çoklu Tablo -
59-) Halit Ziya Uşaklıgil isimli yazarın kitap sayısını listeleyiniz.

Çözüm 1)

Select count(*) from kitap 
join yazar on yazar.yazarno = kitap.yazarno 
where yazar.ad = 'Halit Ziya' and yazar.soyad = 'Uşaklıgil'


ETİKETLER

Select - Join - Where - Çoklu Şart - Toplam Fonksiyonları - Çoklu Tablo -
60-) Ayşe Bakır isimli öğrencinin okuduğu kitap sayısını listeleyiniz.

Çözüm 1)

Select count(*) from ogrenci 
join islem on ogrenci.ogrno = islem.ogrno 
where ogrenci.ad = 'Ayşe' and ogrenci.soyad = 'Bakır'


ETİKETLER

Select - Join - Where - Çoklu Şart - Toplam Fonksiyonları - Çoklu Tablo -
61-) Sinan Ay isimli öğrencinin okuduğu kitapların toplam sayfa sayısı kaçtır.

Çözüm 1)

Select sum(sayfasayisi) from ogrenci 
join islem on ogrenci.ogrno = islem.ogrno 
join kitap on kitap.kitapno = islem.kitapno 
where ogrenci.ad = 'Sinan' and ogrenci.soyad = 'Ay'


ETİKETLER

Select - Join - Where - Çoklu Şart - Toplam Fonksiyonları - Çoklu Tablo -
62-) Ali Al isimli öğrenci kaç farklı yazarın kitabını okumuştur.

Çözüm 1)

Select count(distinct yazarno) from ogrenci 
join islem on ogrenci.ogrno = islem.ogrno 
join kitap on kitap.kitapno = islem.kitapno 
where ogrenci.ad = 'Ali' and ogrenci.soyad = 'Al'


ETİKETLER

Select - Distinct - Join - Where - Çoklu Şart - Toplam Fonksiyonları - Çoklu Tablo -
63-) Rasgele seçilen 5 öğrenciyi yazarlar tablosuna ekleyiniz.

Çözüm 1)

Insert into yazar(ad,soyad) 
	Select top 5 ad,soyad from ogrenci order by newid()


ETİKETLER

Select - Insert - Top - Order By -
64-) Adında a harfi geçen yazarları öğrenciler tablosuna ekleyiniz. Sınıfları 12M olsun.

Çözüm 1)

Insert into ogrenci(ad,soyad,sinif) 
	Select ad,soyad,'12M' from yazar where ad like '%a%'


ETİKETLER

Select - Insert - Where -
65-) En son kitap alan öğrencinin bilgilerini listeleyiniz.

Çözüm 1)

Select top 1 ogrenci.*,atarih
from ogrenci,islem 
where ogrenci.ogrno = islem.ogrno 
order by islem.atarih desc

Çözüm 2)

Select top 1 ogrenci.*,atarih
from ogrenci 
join islem on ogrenci.ogrno = islem.ogrno 
order by islem.atarih desc

Çözüm 3)

Select ogrenci.*,atarih
from ogrenci 
join islem on ogrenci.ogrno = islem.ogrno 
where atarih = (Select max(atarih) from islem)


ETİKETLER

Select - Top - Join - Where - Order By - Alt Sorgu - Çoklu Tablo -
66-) Sınıf isimlerini ve her sınıfta kaç kişi olduğunu listeleyiniz

Çözüm 1)

Select sinif,count(*) as ogrenciSayısı
from ogrenci 
group by sinif


ETİKETLER

Select - Group By - Toplam Fonksiyonları -
67-) Toplam kaç kız ve kaç erkek olduğunu listeleyiniz.

Çözüm 1)

Select cinsiyet,count(*) as ogrenciSayısı
from ogrenci 
group by cinsiyet


ETİKETLER

Select - Group By - Toplam Fonksiyonları - Takma Ad -
68-) Her sınıftaki kız ve erkek öğrenci sayılarını listeleyiniz.

Çözüm 1)

Select sinif,cinsiyet,count(*) as OgrenciSayısı
from ogrenci 
group by cinsiyet,sinif


ETİKETLER

Select - Group By - Toplam Fonksiyonları - Takma Ad -
69-) Her sınıftaki sadece kız öğrenci sayılarını listeleyiniz

Çözüm 1)

Select sinif,cinsiyet,count(*) as OgrenciSayısı
from ogrenci 
where cinsiyet = 'F'
group by cinsiyet,sinif


ETİKETLER

Select - Where - Group By - Toplam Fonksiyonları - Takma Ad -
70-) Sınıf mevcudu 30 dan fazla olan sınıfları ve öğrenci sayılarını listeleyiniz.

Çözüm 1)

Select sinif,count(*) as OgrenciSayısı
from ogrenci 
group by sinif
having count(*) >= 30


ETİKETLER

Select - Group By - Having - Takma Ad -
71-) Öğrencilerin adını, soyadını ve okudukları kitap sayılarını listeleyiniz.

Çözüm 1)

Select ad,soyad,count(*) KitapSayısı
from ogrenci,islem 
where ogrenci.ogrno = islem.ogrno 
group by ogrenci.ogrno,ad,soyad

Çözüm 2)

Select ad,soyad,count(*) KitapSayısı
from ogrenci
join islem on ogrenci.ogrno = islem.ogrno 
group by ogrenci.ogrno,ad,soyad


ETİKETLER

Select - Join - Where - Group By - Toplam Fonksiyonları - Takma Ad - Çoklu Tablo -
72-) Öğrencilerin adını, soyadını ve okudukları kitap sayısını en çok okuyandan az okuyana göre sıralı olarak listeleyiniz.

Çözüm 1)

Select ad,soyad,count(*) KitapSayısı
from ogrenci
join islem on ogrenci.ogrno = islem.ogrno 
group by ogrenci.ogrno,ad,soyad
order by BookCount desc

Çözüm 2)

Select ad,soyad,count(*) KitapSayısı
from ogrenci,islem 
where ogrenci.ogrno = islem.ogrno 
group by ogrenci.ogrno,ad,soyad
order by BookCount desc


ETİKETLER

Select - Join - Where - Group By - Order By - Toplam Fonksiyonları - Takma Ad - Çoklu Tablo -
73-) Öğrencilerin adını soyadını ve okudukları kitap sayısını listeleyiniz. Kitap okumayan öğrencilerde listelensin.(Okuduğu kitap sayısı 0 (sıfır) olarak)

Çözüm 1)

Select ad,soyad,count(islemno) KitapSayısı
from ogrenci
left join islem on ogrenci.ogrno = islem.ogrno 
group by ogrenci.ogrno,ad,soyad
order by BookCount

Çözüm 2)

Select ad, soyad, 
	(Select count(*) from islem 
		where ogrenci.ogrno = islem.ogrno) as KitapSayısı
from ogrenci 
order by KitapSayısı


ETİKETLER

Select - Top - Where - Having - Alt Sorgu -
74-) Yılların çeyreklerine (her 4 aya) göre okunan kitap sayısını listeleyiniz

Çözüm 1)

Select Year(takendate) as Yıl, datepart(qq,takendate) as Quarter,count(*) as Sayı
from islem 
group by Year(takendate),datepart(qq,takendate)


ETİKETLER

Select - Group By - SQL Fonksiyonları -
75-) Her çeyrek yılda kaç öğrenci doğduğunu listeleyiniz.

Çözüm 1)

Select Year(dtarih) as Yıl, datepart(qq,dtarih) as Quarter,count(*) as Sayı
from ogrenci 
group by Year(dtarih),datepart(qq,dtarih)


ETİKETLER

Select - Group By - SQL Fonksiyonları - Takma Ad -
76-) Kitap okumayan öğrencileri listeleyiniz

Çözüm 1)

Select ogrenci.* from ogrenci 
left join islem on ogrenci.ogrno = islem.ogrno 
where islemno is null

Çözüm 2)

Select * from ogrenci 
where ogrno not in 
	(Select ogrno from islem)


ETİKETLER

Select - Where - Alt Sorgu - Çoklu Tablo - Left Join -
77-) Hiç okunmamış olan kitapları listeleyiniz

Çözüm 1)

Select kitap.* from kitap 
left join islem on kitap.kitapno = islem.kitapno 
where islemno is null

Çözüm 2)

Select * from kitap 
where kitapno not in 
	(Select kitapno from islem)


ETİKETLER

Select - Where - Alt Sorgu - Çoklu Tablo - Left Join -
78-) Parametre ile belirtilen iki sayı arasında yine parametre ile belirtilen sayı kadar birbirinden farklı sayılar listeleyen procedure

Çözüm 1)

Create procedure SP_rasgeleUret(@miktar int,@min int,@max int)
as 
Begin
	Declare @sayilar table(number int)
	Declare @i int = 0
	Declare @sayi int
	while (@i<@miktar)
	Begin
		Set @sayi= floor(rand()*(@max-@min+1))+@min
		if(not exists(Select * from @sayilar where number = @sayi))
		begin
			insert into @sayilar values(@sayi)
			Set @i = @i + 1 
		end
	end
	Select * from @sayilar order by 1
End
--Procedure yi çalıştırmak için
Execute SP_rasgeleUret 5,20,30


ETİKETLER

Select - Insert - Procedure - Declare -
79-) Öğrenci isimlerini listeleyiniz. Aynı isimler bir kere listelensin

Çözüm 1)

Select distinct ad from ogrenci


ETİKETLER

Select - Distinct -
80-) Sınıf isimlerini listeleyiniz. Aynı sınıf ismi bir kere listelensin?

Çözüm 1)

Select distinct sinif from ogrenci


ETİKETLER

Select - Distinct -
81-) Öğrencilerin sadece adını, soyadını listeletiniz. Aynı isim soyisimde olanlar bir kere listelensin

Çözüm 1)

Select distinct ad, soyad from ogrenci


ETİKETLER

Select - Distinct -
82-) Öğrenci tablosundan sadece 5 kayıt listeletiniz.

Çözüm 1)

Select top 5 * from ogrenci


ETİKETLER

Select - Top -
83-) 10 tane yazar listeletiniz.

Çözüm 1)

Select top 10 * from yazar


ETİKETLER

Select - Top -
84-) 5 tane farklı öğrenci adı listeletiniz.

Çözüm 1)

Select distinct top 5  ad from ogrenci


ETİKETLER

Select - Top - Distinct -
85-) 3 tane farklı kitap adı listeleyiniz.

Çözüm 1)

Select distinct top 3  ad from kitap


ETİKETLER

Select - Top - Distinct -
Kütüphane Veritabanı
Database