Merhabalar, Bugün sql server üzerinde bulunan bazı Hazır fonksiyonlardan bahsedeceğiz.
Örnek database olarak “AdventureWorks” üzerinde çalışacağız. AdventureWorks veritabanını buradan https://koksalaci.com/2019/10/31/sql-server-ornek-veritabanlarini-indirin-ve-yukleyin-2019/
use AdventureWorks2017 select * from Person.Person -- Person tablosundaki kayıtlardan 2 kolon elde etmek istiyoruz. -- birinci kolon : BusinessEntityID değerini göstermeli -- ikinci kolon: FirstName ve LastName alanlarından oluşan bir karaktersel değeri görüntülemeli select BusinessEntityID as PersonelNo, FirstName + ' '+ LastName as [Personel Adı] from Person.Person -- Kişilerin soyadlarını büyük harfler ile görüntülemek gerekiyor. select BusinessEntityID , FirstName, Upper(LastName) from Person.Person -- Upper varsa Lower da vardir. :) select BusinessEntityID , Lower(FirstName), Upper(LastName) from Person.Person select * from Person.Person -- Kisinin adının bas harfi ve soyadinin tamami birlestirilerek tek bir bilgi elde edelim -- bu bilglerin tamami kucuk harf olarak goruntulenmesini saglayalim -- ve @sirketAdi.com.tr olarak mail formati olusturalim select FirstName,LastName, Lower(SubString(FirstName,1,1) + LastName) + '@firma.com.tr' from Person.Person -- bir degerin karakter sayisini elde etmek select Len(FirstName) from Person.Person --SubString kullanırken 3 parametre vermemiz gerekir. --İşlem Yapılacak Kolon Adı , Hangi Karakterden Başlanacağı bilgisi ve Kaç karakter alınacağı bilgisi select Lower(SubString(FirstName,1,1)) + Upper(SubString(FirstName,2,(Len(FirstName) - 1))) from Person.Person -- Convert fonksiyonu iki parametre alarak calisir -- 1) Hangi tipe donusum yapilacagi bilgisi -- 2) Hangi degerin donusturulecegi select Convert(nvarchar(4),ProductID) + ' - ' + Name from Production.Product order by ProductID -- Production.Product tablosu -- UrunID , UrunAdi , Renk , Fiyat -- Coalesce fonksiyonu iki parametre alir. Hangi kolon uzerinde calisacagi ve hangi degeri kullanacagi. -- ilgili kolon null degere sahip ise bizim belirttigimiz deger geriye dondurulur. -- null degil ise kolonun kendi degeri geriye dondurulur. select ProductID,Name,Coalesce(Color,'Belirtilmemiş') as Color,ListPrice from Production.Product order by newid() -- order by newid() kullandigimizda sonuclari rastgele siralayabiliriz. select ProductID,Name,Coalesce(Color,'Belirtilmemiş') as Color,ListPrice from Production.Product where ListPrice != 0 order by newid() create table dbo.Oyun ( ID int PRIMARY KEY IDENTITY(1,2), Ad nvarchar(60) not null, Fiyat money DEFAULT 0, SonIslemTarihi datetime DEFAULT getdate() ) select * from dbo.Oyun insert into dbo.Oyun values ('PES 2009',59.90,'20090101') insert into dbo.Oyun values ('PES 2008',59.90,'2008-10-07 13:48:15.967') insert into dbo.Oyun (Ad,SonIslemTarihi) values ('Fifa 2009','20090102') insert into dbo.Oyun (Ad,Fiyat) values ('WorldWide Soccer 2009',9.90) select Ad,SonIslemTarihi, Year(SonIslemTarihi), Month(SonIslemTarihi), Day(SonIslemTarihi) from dbo.Oyun Umarım İşinizi görmüştür. İyi Çalışmalar.
Related posts
Kategoriler
- ASP.NET (1)
- C# (13)
- SQL İpuçları ve Püf Noktaları (1)
- SQL Server (4)
- Uncategorized (1)