YZM420 İLERİ VERİTABANI SİSTEMLERİ
ÖDEV 2
Son Teslim Tarihi: 18 Kasım 2014 Salı 09:10
PART
------------------------------* PART_ID
INT/IDENTITY
PART_CODE
VARCHAR(20)
PART_NAME
VARCHAR(100)
CUSTOMER
-------------------------------* CUST_ID
INT/IDENTITY
CUST_CODE
VARCHAR(20)
CUST_NAME
VARCHAR(100)
ORDER_ID
1
2
3
4
5
6
7
8
9
ORDER_DATE
01.01.2013
02.01.2013
03.01.2013
04.01.2013
05.01.2013
06.01.2013
07.01.2013
08.01.2013
09.01.2013
ORDER
CUST_ID
1
1
2
2
NULL
NULL
1
3
3
PART_ID
1
NULL
2
NULL
1
2
7
1
6
QUANTITY
5
2
4
1
2
2
1
1
2
ORDER
------------------------------* ORDER_ID
INT/IDENTITY
ORDER_DATE
DATETIME
CUST_ID
INT
PART_ID
INT
QUANTITY
DECIMAL(10, 2)
CUST_ID
1
2
CUSTOMER
CUST_CODE
CUST_NAME
NO
DOCTOR NO
JB
JAMES BOND
PART_ID
PART
PART_CODE
1
2
3
4
5
CPU
HDD
KBD
SCN
RAM
PART_NAME
CPU
HARDDISK DRIVE
KEYBOARD
SCREEN 17"
RAM MODULE
1. Sipariş (ORDER) kayıtlarını müşteri ve parçaların kod ve adları da sonuç kümesinde açıkça
görünecek şekilde listelemek üzere iki SQL sorgusu yazın. (65 puan)
a. İlk sorguda Outer Join kullanılmalıdır.
b. İkinci sorguda Outer Join kullanılmamalıdır.
c. Her iki sorgu da tamamen aynı sonuç kümesini döndürmelidir (tüm ORDER kayıtları
sonuç kümesinde tam olarak bir kez yer almalıdır; yani, hiçbir ORDER bilgisi
kaybedilmemelidir).
d. Her iki sorguyu ve bunların döndürdüğü sonuç kümelerini raporunuza ekleyin.
2. Sipariş (ORDER) kayıtlarını müşteri ve parçaların kod ve adları da sonuç kümesinde açıkça
görünecek şekilde listelemek üzere bir SQL sorgusu yazın. (35 puan)
a. Bu kez sorguda Inner Join kullanılmalıdır.
b. NULL müşterili sipariş kayıtları için “JB” kodlu müşterinin siparişiymiş gibi
davranılmalıdır.
c. NULL parçalı sipariş kayıtları için “CPU” kodlu parçanın siparişiymiş gibi
davranılmalıdır.
d. Bu soru için herhangi bir tablodaki kayıtları değiştirmeniz istenmemektedir! Geçici
tablo vb. yollar da kullanmayın! İşi sadece tek bir basit Select ifadesi yazarak yapın!
Aksi halde puan verilmeyecektir.
e. Sorguyu ve sorgunun sonuç kümesini raporunuza ekleyin.
1
Genel Kurallar ve Ödev Teslimi
1. Yaptığınız çalışmayı anlatan bir rapor teslim edin:
a. Sorularda belirtildiği şekilde tüm SQL sorguları ve bunların sonuç kümeleri.
b. Bu ödevle ne öğrendiğinizi kendi cümlelerinizle açıkladığınız bir bölüm.
2. Ödevi yalnızca basılı doküman olarak teslim edin. E-posta yoluyla herhangi bir şey
göndermeyin.
3. Geç teslim edilen ödevler kesinlikle değerlendirmeye alınmayacaktır.
4. Tüm kodları kendiniz yazmaya çalışın, başka kaynaklardan kopyala-yapıştır yoluyla
birşeyler hazırlamayın. Arkadaşlarınızın çalışmasını kendi çalışmanızmış gibi sunmaktan
kesinlikle kaçının. Bu şekilde yapıldığı anlaşılan ödevler kesinlikle değerlendirmeye
alınmayacaktır.
5. Ödevler bireysel çalışma şeklinde yapılacaktır. Grup çalışması kabul edilmeyecektir.
Yrd. Doç. Dr. Volkan TUNALI
[email protected]
2
Download

YZM420 İLERİ VERİTABANI SİSTEMLERİ ÖDEV 2 Son Teslim Tarihi