Lower: Tum harfleri kucuk harfe cevirir..
Select Lower(FirstName) from EmployeesCiktisi; Ahmet yerine ahmet, MEHMET yerine mehmet...
Substring:
CompanyName kolonundaki verilerde 1' den basla 3 tane al.
Select Substring(CompanyName,1,3) from CustomersCiktisi; AFLAN yerine ALF, ANALA yerine ANA...
DateTime Functions..
GetDate(): simdiki zaman..
Select GetDate()
Ciktisi; 2010-01-29 18:13:50.917
Year: Belli bir tarihin yili.. (Ay-Gun-Yil)
Select Year('29.01.2010') --Verilen tarihin yilini alir.
Ciktisi; 2010
Select Year(GetDate()) --simdiki zamanin yilini verir.
Ciktisi; 2010
Month, Day.. gibi diger ozellikleri de bulunmaktadir.
Select Month('10.01.2010') --Verilen tarihin ayini alir.
Ciktisi; 10
Select Day(GetDate()) --simdiki zamanin gununu verir.
Ciktisi; 29
Bugun dogum gunu olan Calisanlarim kimler?
Select FirstName, LastName from EmployeesWHERE Day(BirthDate)=Day(GetDate()) and Month(BirthDate)=Month(GetDate())
BirthDate kolonundaki gun (Day) = simdiki zamanin gunu..
Datediff: iki tarih araligindaki farki verir.
Datediff(dd mm yy, ilk tarih, son tarih)
Select Datediff(dd, '10.10.2000', Getdate())
dd diyerek gun farkina bakmasini soyledik.
Ciktisi; 3053
60 yasindan buyuk Calisanlarim kimler?
Select FirstName, LastName from EmployeesWHERE Datediff(yy,BirthDate,Getdate())>60yy diyerek yil farkina bakmasini soyledik.
Dateadd: Bir tarihe ekleme yapar.
select Dateadd(yy, 10, Getdate()) --Yil ekleyecegim 'yy', 10 ekleyecegim '10', bugunun tarihe ekleyecegim 'getdate()'
select Dateadd(dd, 15, Getdate()) --Gun ekleyecegim 'dd', 15 ekleyecegim '15', bugunun tarihe ekleyecegim 'getdate()'
select Dateadd(mm, 2, Getdate()) --Ay ekleyecegim 'mm', 2 ekleyecegim '2', bugunun tarihe ekleyecegim 'getdate()'
KENDİ FONKSYONLARIMIZ
1.Tek deger donduren fonksiyonlar
Syntax:
Create Function Isim(@parametre1 tipi, @parametre2 tipi)
returns geriDonusTipias
begin
islemlerimiz...
return sonuc end
Kdv hesaplama fonksiyonu..
Create Function KdvHesapla(@fiyat money, @kdvOrani float)
returns money
as
begin
Declare @sonFiyat money
set @sonFiyat=@fiyat+@fiyat*@kdvOranireturn @sonFiyatend
Bizim tanimladigimiz fonksiyonlarin Sysem fonksiyonlari ile karismamasi iCin basina dbo yazilir.
select dbo.KdvHesapla(100,0.18)
Tabloda kullanimi
Select ProductName, dbo.KdvHesapla(UnitPrice,0.18) as 'Toplam Fiyati' from ProductsYas hesapla
Create Function YasHesapla(@ilkTarih datetime)
returns int
as
begin
Declare @yas int
Set @yas=Datediff(yy, @ilkTarih, getdate())
return @yasend
Select FirstName, LastName, dbo.YasHesapla(BirthDate) from Employees
Tablo donduren fonksiyonlar
Parametreli View olarak gorulebilir.
Syntax:
Create Functions Isim
(@parametre1 tip, paramtere2 tip)
returns table --Tablonun iCeriginde kayitlari dondurecek
return
(
Select sorgusu...
)
Create Function SehreGoreMusteri(@sehir nvarchar(20))
returns table
return
(
Select CompanyName, ContactName, Address from Customers WHERE City=@sehir
)
Select * from SehreGoreMusteri('Paris')
Tarihe Format Vermek
Convert:
Convert(CevrilecekTip, deger, Stil Numarasi)
Select Convert(nvarchar(20), BirthDate, 107) from Employees