VeriTabanı Dersi Sınav Soru ve Cevapları

Soruları Aşağıdaki Tabloya göre cevaplayınız.
1.KategoriId ve o kategorideki kitap sayısını veren SQL cümlesini yazınız.
2.Kategorisi bilgisayar olan fakat yazarı Memik Yanık olmayan kitapları listeleyen SQL cümlesini yazınız.
3.Kitaplara ait yazar adı, kitap adı ve sayfa sayısını listeleyen SQL cümlesini yazınız.
4.Kitaplara ait yazar adı, kategori adı ve kitap adını listeleyen SQL cümlesini yazınız.
5.Yazılan toplam sayfa sayısını listeleyen SQL cümlesini yazınız.
6.Veritabanı kategorisindeki kitapları silen SQL cümlesini yazınız.
7.C# kategorisindeki kitapların fiyatlarını %50 artıran SQL cümlesini yazınız.
8.Memik Yanık isimli yazarın yazmış olduğu kitapların kategori adların listeleyen SQL cümlesini yazınız.
9.Kitapları pahalıdan ucuza sıralayan SQL cümlesini yazınız.

YazarlarKategorilerKitaplar
YazarIdKategoriIdKitapId
YazarAdiKategoriAdiKitapAdi
  YazarId
  KategoriId
  SayfaSayisi
  Fiyat

Cevaplar
1.

 SELECT KategoriId, COUNT(*) FROM Kitaplar
GROUP BY KategoriId

2.

SELECT * FROM Kitaplar
WHERE KategoriId IN (SELECT KategoriId FROM Kategoriler WHERE KategoriAdi ='Bilgisayar')
AND YazarId IN (SELECT YazarId FROM Yazarlar WHERE YazarAdi <>'Memik Yanık') 

3.

SELECT y.YazarAdi, k.KitapAdi, k.SayfaSayisi FROM Yazarlar y, Kitaplar k
WHERE y.YazarId = k.YazarId 

4.

SELECT y.YazarAdi, k.KitapAdi, kt.KategoriAdi FROM Yazarlar y, Kitaplar k, Kategoriler kt
WHERE y.YazarId = k.YazarId AND k.KategoriId = kt.KategoriId 

5.

SELECT SUM(SayfaSayisi) FROM Kitaplar 

6.

DELETE FROM Kitaplar
WHERE KategoriId IN (SELECT KategoriId FROM Kategoriler WHERE KategoriAdi = 'Veritabanı') 

7.

UPDATE Kitaplar SET Fiyat = Fiyat * 1.5
WHERE KategoriId IN (SELECT kategoriId FROM Kategoriler WHERE KategoriAdi ='C#') 

8.

SELECT KategoriAdi FROM Kategoriler
WHERE KategoriId IN (SELECT KategoriId FROM Kitaplar WHERE YazarId IN (SELECT YazarId FROM Yazarlar WHERE YazarAdi = 'Memik Yanık'))

9.

SELECT * FROM Kitaplar
ORDER BY Fiyat DESC

Pin It on Pinterest