DML devam
Bu konu Northwind database ile ilgili olduğundan dolayı database’i indirip restore etmeyi unutmayınız.
https://www.fethimurat.com/blog/wp-content/uploads/2010/08/NorthWind.zip
-- Employees tablosundan calışanların adlarını(FirstName) soyadlarını(LastName) ve yaşlarını listeleyin select FirstName,LastName, DATEDIFF(YYYY,BirthDate,GETDATE()) from Employees select FirstName,LastName, YEAR(GETDATE())-YEAR(BirthDate) as Yas from Employees order by Yas asc-- 0 dan 100000... -- a dan z ye select FirstName,LastName, YEAR(GETDATE())-YEAR(BirthDate) as Yas from Employees order by Yas desc,FirstName asc -- en eski 3 personeli getirin select top 3 FirstName,LastName,HireDate from Employees order by HireDate -- default olarak asc dir -- en yeni 4 personeli getirin select top 4 FirstName,LastName,HireDate from Employees order by HireDate desc -- en yaşlı çalışanın adını soyadını ve yaşını getirin select top 1 FirstName,LastName, YEAR(GETDATE())-YEAR(BirthDate) as Yas from Employees order by Yas desc -- Margaret ile aynı tarihte doğmuş bir personel ekleyelim insert into Employees(FirstName,LastName,BirthDate) values('Yunus','Ardıc', ( select BirthDate from Employees where FirstName ='Margaret' ) ) select * from Employees order by BirthDate asc -- en yaşlı çalışanların adlarını, soyadlarını ve yaslarını getirin select FirstName,LastName,DATEDIFF(YYYY,BirthDate,GETDATE()) as Yas from Employees where DATEDIFF(YYYY,BirthDate,GETDATE())= ( select Top 1 DATEDIFF(YYYY,BirthDate,GETDATE()) as Yas from Employees order by Yas desc ) -- hangi ülkelerle iş yapıyoruz select distinct Country from Customers -- Ödev 1) Tost seven çalışanların adı soyadı ve not bilgilerini getirin -- Employees tablosu -- Yunus a özel: O verinin uzunluğunu ve kacıncı indekste yazıldığını bulacak "toast" -- Ödev 2) Beverages adlı kategorideki ürünlerin adlarını getirin -- Categories tablosundaki CategoryName kolonu. Products tablosu ProductName kolonu -- Ödev 3) Mayumi's isimli tedarikci(Supplier) ın getirdiği ürünlerin(Product) adlarını(ProductName) getirin -- Aggreagte Function -- max,min,avg,sum,count --> max => en büyük değer --> min => en küçük değer --> avg => ortalama --> sum(hücre değerlerinin toplamı) --> count null olmayan satır sayısı /* ID Ad Yas Hede ------------------ 1 a 12 NULL 2 b 13 Veri => max(Yas) 13 => min(Yas) 12 => avg(yas) 12.5 => avg(ID) 1.5 => count(ID) 2 => count(Hede) 1 => sum(Yas) 25 */ -- birim fiyatı (UnitPrice) en pahalı olan ürünün(Products) birim fiyatını getirin select MAX(UnitPrice) from Products -- bu zamana kadar toplam kaç sipariş(Orders tablosu) almışım? select COUNT(OrderID) as SS from Orders -- toplam kaç çalışanım var? select COUNT(EmployeeID) from Employees -- Toplam kaç çalışanım var ve bu çalışanlarımın adını gösterin? select FirstName, COUNT(EmployeeID) from Employees -- Listedeki ürünlerin(products tablosu) ortalama birim fiyatını (UnitPrice) gösterin select AVG(UnitPrice) from Products select Top 10 * from [Order Details] -- sipariş başına ortalama ne kadar para kazanmışım? select SUM(UnitPrice*Quantity)/ COUNT(distinct OrderID) from [Order Details] -- Ödev 4) Northwind de CategoryuName değeri NULL olan kayıtların CategoryName ini MULL olarak gösterecek sorguyu yazınız