Personel tablosu

Üretim biriminde çalışan kaç adet bekâr personel vardır?
Select count(*) From Personel
Where Medeni_hal=’bekar’ and Birim=’üretim’
Üretim biriminde çalışmayan personellerin ad ve soyadlarının adına göre sıralanmış listesi?
Select adi, soyadi From Personel
Where birim not in (‘üretim’)
Order by adi
6 harfli bir isme sahip olan ve 3 çocuk sahibi personellerin kayıtları?
Select * From Personel
Where adi like ‘______’ and cocuk_sayisi=3
Veya
Select * From Personel
Where length(adi)=6 and çocuk_sayisi=3
Kayıtlı personellerin çocuk sayılarının ortalaması kaçtır?
Select avg(cocuk_sayisi) From Personel
Çocuk sayısı ortalaması tamsayı çıksın istiyorsak;
Select round(avg(çocuk_sayisi)) From Personel
İlk 5 personelin kaydının görüntülenmesi
Select top 5 * From Personel
Bir kritere göre ilk 5 kaydı bulmak istersek, örneğin adi bilgisine göre şöyle yazarız.
Select top 5 * From Personel
Order by adi
Eskişehir, Ankara veya Muğla ilinden olan personellerin adlarına göre sıralanmış listesi?
Select * From Personel
Where Sehir in (‘Eskişehir‘, ‘Ankara‘, ‘Muğla’)
Order by adi
world tablosu

Aşağıdaki çıktıyı verecek SQL ifadesi nedir?

Select Name, population From world
Where populatin>100000 and population<125000
Aşağıdaki SQL ifadesinin sonucu nedir?
SELECT name, population
FROM world
WHERE name LIKE “Al%”
Aşağıdaki sorgunun sonucu nedir?
SELECT name, length(name)
FROM world
WHERE length(name)=5 and region=’Europe’
- Malta ve Italy (Avrupa kıtasında ve 5 harf uzunluğunda).
Aşağıdaki sorgunun sonucu nedir?
SELECT name, area*2 FROM world
WHERE population = 64000

Yüzölçümü 50.000 nüfusu 10.000.000’dan düşük olan ülkeleri; adı, yüzölçümü ve nüfusu bilgileri ile listede gösterin.
- Eldeki verilere göre sonuç NULL olacaktır.
China, Australia, Nigeria ve France için için nüfus yoğunluklarını (alana düşen nüfus) azalan sırada veriniz.
Select name, population/area From world
Where name in (‘China’, ‘Australia’, ‘Nigeria’, ’France’)
Order by population/area Desc
KÜTÜPHANE VERİTABANI ŞEMASI
YAZAR(YAZARNO, YAZARADI, YAZARTIPI, DNO)
YAZARKITAP(DNO (KITAP), YAZARNO (YAZAR), SIRA)
KITAP(DNO, KADI, ORNEKAD, BASIM, YY, YE, YT, ISBN, OZET, BOLUMNO (BOLUM),
FOZELIK, DİZİ, TASNIFNO, FIYAT, FIRMANO, GELISTAR, DILNO, ADET)
BOLUM(BOLUMNO, BOLUMADI)
GRUP(GRUPNO, GRUPADI)
UNVAN(UNVANNO, UNVANADI)
UYE(UYENO, ADSOYAD, BOLUM (BOLUM), GRUP (GRUP), UNVAN (UNVAN), ADRES,
MAIL, TEL, GSM)
ODUNC(UYENO (UYE), DNO (KITAP), ALISTAR)
IADE(UYENO (UYE), DNO (KITAP), GELISTAR)
1. Adında ‘data’ kelimesi geçen kitapların, demirbaş numarasını, adını, basım bilgisini ve fiyatını veren SQL ifadesini yazınız.
SELECT DNO, KADI, BASIM, FIYAT FROM KITAP
WHERE KADI LIKE ‘%data%’
2. Kitap ödünç alanların üye numarası ODUNC tablosunda, adsoyad bilgisi ise UYE
tablosunda tutulmaktadır. Buna göre üzerinde kitap bulunan üyelerin adlarını, her bir ad bir kere tekrar edecek şekilde verecek sorguyu yazınız.
SELECT DISTICNT ADSOYAD FROM ODUNC, UYE
WHERE ODUNC.UYENO=UYE.UYENO
3. 09.06.2008 – 11.06.2008 tarihleri arasında kitap iade eden üyelerin listesini veren SQL
ifadesini yazınız.
SELECT UYENO, ADSOYAD FROM IADE, UYE
WHERE GELISTAR>‘09.06.2008’ AND GELISTAR<’11.06.2008’ AND
IADE.UYENO=UYE.UYENO
4. Fiyatları ortalama kitap fiyatından yüksek olan kitapları ödünç alanların üye numaralarını
verecek sorgu ifadesini yazınız.
SELECT UYENO FROM ODUNC
WHERE DNO IN (SELECT DNO FROM KITAP WHERE FIYAT>
(SELECT AVG(FIYAT) FROM KITAP))
5. Demirbaş numarası 1000 ile 2000 arasında olan kitapları ödünç alan üyeleri listeleyen
SQL ifadesini yazınız.
SELECT * FROM UYE
WHERE UYENO IN
(SELECT UYENO FROM ODUNC WHERE DNO>1000 AND DNO<2000 )
6. 100’den fazla sayıda kitap yazılmış dillerin kodlarını veren SQL ifadesini yazınız.
SELECT DILNO, COUNT(DNO) FROM kitap
GROUP BY DILNO
HAVING COUNT(DNO)>100
7. YAZARKITAP tablosunu CREATE TABLE ifadesi yardımıyla oluşturunuz.
CREATE TABLE YAZARKITAP
(
DNO INT NOT NULL,
YAZARNO INT NOT NULL,
SIRA INT,
FOREIGN KEY DNO REFERENCES KITAP(DNO),
FOREIGN KEY YAZARNO REFERENCES YAZAR (YAZARNO),
PRIMARY KEY (DNO, YAZARNO)
)
8. YAZARKITAP tablosunda yer alan DNO bilgisini KitapID olarak değiştiriniz.
ALTER TABLE YAZARKITAP
DROP COLUMN DNO
ALTER TABLE YAZARKITAP
ADD COLUMN KitapID INT
Sql soruları konusundan Bir önceki veri tabanı konusuna geçmek için — Tıklayınız