-- 1.
Tüm öğrencileri listele
SELECT * FROM ogrenci;
-- 2. Ad, Soyad ve Sınıfı listele
SELECT ograd, ogrsoyad, sinif FROM ogrenci;
-- 3. Cinsiyeti kız olanları listele
SELECT * FROM ogrenci WHERE cinsiyet = 'K';
-- 4. Her sınıf bir kez
SELECT DISTINCT sinif FROM ogrenci;
-- 5. Kız ve sınıfı 10A olanlar
SELECT * FROM ogrenci WHERE cinsiyet = 'K' AND sinif = '10A';
-- 6. 10A veya 10B sınıfındaki öğrenciler
SELECT ograd, ogrsoyad, sinif FROM ogrenci WHERE sinif IN ('10A', '10B');
-- 7. Okul numarası olarak göster
SELECT ograd, ogrsoyad, ogrno AS okulnumarasi FROM ogrenci;
-- 8. Ad Soyad birleştir
SELECT ograd + ' ' + ogrsoyad AS adsoyad FROM ogrenci;
-- 9. Adı A harfiyle başlayanlar
SELECT * FROM ogrenci WHERE ograd LIKE 'A%';
-- 10. 50–200 sayfa arası kitaplar
SELECT kitapadi, sayfasayisi FROM kitap WHERE sayfasayisi BETWEEN 50 AND 200;
-- 11. Adı Fidan, İsmail, Leyla olanlar
SELECT * FROM ogrenci WHERE ograd IN ('Fidan', 'İsmail', 'Leyla');
-- 12. Adı A, D, K ile başlayanlar
SELECT * FROM ogrenci WHERE LEFT(ograd,1) IN ('A', 'D', 'K');
-- 13. 9A erkek veya 9B kız
SELECT ograd, ogrsoyad, sinif, cinsiyet FROM ogrenci WHERE (sinif = '9A' AND
cinsiyet = 'E') OR (sinif = '9B' AND cinsiyet = 'K');
-- 14. 10A veya 10B erkekler
SELECT * FROM ogrenci WHERE sinif IN ('10A', '10B') AND cinsiyet = 'E';
-- 15. Doğum yılı 1989
SELECT * FROM ogrenci WHERE YEAR(dtarih) = 1989;
-- 16. Numarası 30-50 arası kızlar
SELECT * FROM ogrenci WHERE ogrno BETWEEN 30 AND 50 AND cinsiyet = 'K';
-- 17. Adına göre sıralama
SELECT * FROM ogrenci ORDER BY ograd;
-- 18. Ad ve soyada göre sıralama
SELECT * FROM ogrenci ORDER BY ograd, ogrsoyad;
-- 19. 10A öğrencileri numaraya göre azalan
SELECT * FROM ogrenci WHERE sinif = '10A' ORDER BY ogrno DESC;
-- 20. İlk 10 kayıt
SELECT TOP 10 * FROM ogrenci;
-- 21. İlk 10 öğrencinin ad, soyad, doğum tarihi
SELECT TOP 10 ograd, ogrsoyad, dtarih FROM ogrenci;
-- 22. En fazla sayfa sayılı kitap
SELECT TOP 1 * FROM kitap ORDER BY sayfasayisi DESC;
-- 23. En genç öğrenci
SELECT TOP 1 * FROM ogrenci ORDER BY dtarih DESC;
-- 24. 10A sınıfındaki en yaşlı
SELECT TOP 1 * FROM ogrenci WHERE sinif = '10A' ORDER BY dtarih;
-- 25. İkinci harfi N olan kitaplar
SELECT * FROM kitap WHERE kitapadi LIKE '_n%';
-- 26. Sınıfa göre grupla
SELECT sinif, COUNT(*) AS ogrenci_sayisi FROM ogrenci GROUP BY sinif;
-- 27. Öğrencileri rastgele sırala
SELECT * FROM ogrenci ORDER BY NEWID();
-- 28. Rastgele öğrenci seç
SELECT TOP 1 * FROM ogrenci ORDER BY NEWID();
-- 29. 10A'dan rastgele bir öğrenci
SELECT TOP 1 ograd, ogrsoyad, ogrno, sinif FROM ogrenci WHERE sinif = '10A' ORDER
BY NEWID();
-- 30. Kemal Uyumaz yazarı ekle
INSERT INTO yazar (yazarad, yazarsoyad) VALUES ('Kemal', 'Uyumaz');
-- 31. Biyografi türünü ekle
INSERT INTO tur (turadi) VALUES ('Biyografi');
-- 32. 3 öğrenci tek sorguda ekle
INSERT INTO ogrenci (ograd, ogrsoyad, cinsiyet, sinif)
VALUES
('ÇAĞLAR', 'ÜZÜMCÜ', 'E', '10A'),
('LEYLA', 'ALAGÖZ', 'K', '9B'),
('AYŞE', 'BEKTAŞ', 'K', '11C');
-- 33. Rastgele bir öğrenciyi yazarlara ekle
INSERT INTO yazar (yazarad, yazarsoyad)
SELECT TOP 1 ograd, ogrsoyad FROM ogrenci ORDER BY NEWID();
-- 34. No’su 10–30 arası öğrencileri yazarlara ekle
INSERT INTO yazar (yazarad, yazarsoyad)
SELECT ograd, ogrsoyad FROM ogrenci WHERE ogrno BETWEEN 10 AND 30;
-- 35. Nurettin Belek yazarı ekle ve yazar numarasını yazdır
INSERT INTO yazar (yazarad, yazarsoyad) VALUES ('Nurettin', 'Belek');
SELECT @@IDENTITY AS yazar_no;
-- 36. 10B sınıfı, no=3 olanı 10C'ye geçir
UPDATE ogrenci SET sinif = '10C' WHERE sinif = '10B' AND ogrno = 3;
-- 37. 9A sınıfını 10A'ya aktar
UPDATE ogrenci SET sinif = '10A' WHERE sinif = '9A';
-- 38. Herkese 5 puan ekle
UPDATE ogrenci SET puan = puan + 5;
-- 39. 25 numaralı yazarı sil
DELETE FROM yazar WHERE yazarno = 25;