MS SQL Server - Fonksiyonlar 2

ASCII : Tek bir parametre alır. Parametre olarak göndereceğiniz harf bilgisinin ascii karşılığını verir.

SELECT ASCII('A')

CHAR : Tek bir parametre alır. Parametre olarak gönderdiğiniz ascii kodunun karakter karşılığını verir.

SELECT CHAR(65)

AVG : Tek bir parametre alır. Parametre olarak verilecek kolon bilgisinin ortalama değerini verir. Aslında burada yaptığı işlemin açılımı şudur ki öncelikle belirtilen kolonun tooplam değerini ve toplam kayıt sayısını bulur. Daha sonra bölme işlemi gerçekleştirerek aritmetik ortalamayı verir.

Select AVG(StandardCost) from Production.Product

SUM : Tek bir parametre alır. Parametre olarak göndereceğiniz kolonun tüm kayıtlarını toplar.

Select SUM(StandardCost) from Production.Product

MAX/MIN : Tek bir parametre alır. Parametre olarak verilecek kolonun sayısal tipteyse en büyük - en küçük değerini, string tipteyse A-Z bakımından değerini, tarih tipindeyse yakın-uzak tarih bakımından değerini verir.

Select MAX(StandardCost) from Production.Product

Select MIN(StandardCost) from Production.Product


GETDATE() : O anın tarih ve saat bilgisini verir.

Select GetDate()

DATEADD : Üç parametre alır. Birinci parametre datepart yani eklemek istediğiniz zaman dilimidir. İkinci parametre ne kadar zaman ekleneceği ve üçüncü parametre de eklenecek zaman için referans zamandır. Aşağıdaki örnek "12.12.2005" tarihine "127" gün eklemektedir.

Select DateAdd(dd, 117, '12.12.2005')

Datepart konusunda aşağıdaki referanslara uyulmalıdır:

-- Gün için = d , dd
-- Ay için = m , mm
-- Yıl için = yy , yyyy
-- Hafta için = wk , ww
-- Saat için = hh
-- Dakika için = mi , n
-- Saniye için = ss , s
-- Milisaniye için = ms

DATEDIFF : Üç parametre alır. Birinci parametre datepart yani iki tarih arasındaki hangi zaman diliminden farkı istediğinizi belirtmeniz gereken kısım, ikinci parametre birinci tarihi, üçüncü parametre ise ikinci tarihi belirtmeniz içindir.

Select DateDiff(dd, '08.04.2005', '12.12.2005')

Datepart konusunda aşağıdaki referanslara uyulmalıdır:

-- Gün için = d , dd
-- Ay için = m , mm
-- Yıl için = yy , yyyy
-- Hafta için = wk , ww
-- Saat için = hh
-- Dakika için = mi , n
-- Saniye için = ss , s
-- Milisaniye için = ms

DATENAME : İki parametre alır. Birinci parametre datepart ikinci parametre ismini getireceğiniz tarih bilgisidir.

Select DateName(m,'2005-12-18')

Datepart konusunda aşağıdaki referanslara uyulmalıdır:

-- Gün için = d , dd
-- Ay için = m , mm
-- Yıl için = yy , yyyy
-- Hafta için = wk , ww
-- Saat için = hh
-- Dakika için = mi , n
-- Saniye için = ss , s
-- Milisaniye için = ms

Select (DateName(dd,'2005-12-18') + ' ' + DateName(m,'2005-12-18') + ' ' + DateName(YY,'2005-12-18'))


SUBSTRING : 3 parametre alır. Birinci parametre metnin kendisi, ikinci parametre kaçıncı karakterden başlanacağı ve üçüncü parametre kaç karakter alınacağı şeklindedir.

Declare @Degisken varchar(20)
Set @Degisken = 'xx'
Select SUBSTRING(@Degisken,1,3)

UPPER/LOWER : Bir parametre alır. Parametre olarak gönderilen textin karakterlerini büyük-küçük harfe çevirir.

Select UPPER('x x')

Select Lower('X X')

SQUARE : Bir parametre alır. Parametre olarak gönderilen sayı tipindeki değerin matematiksel karesini geri döndürür.

Select SQUARE(10)

DAY/MONTH/YEAR : Bir parametre alır. Parametre olarak gönderilen tarih tipindeki alanın gün-ay-yıl bilgisini geri döndürür.

Select DAY('2007-01-27')

Select MONTH('2007-01-27')

Select YEAR('2007-01-27')

COS/SIN/TAN/COT : Bir parametre alır. Verilecek açı değerinin(sayısal) sinüs, cosinüs, tanjant ve kotanjant değerini geri döndürür.

Select COS(30)

Select SIN(30)

Select TAN(30)

Select COT(30)

LEFT/RIGHT : İki parametre alır. Parametre olarak gönderilen string ifadenin soldan yada sağdan ikinci parametre ile belirtilecek sayı kadar karakterini geri döndürür.

Select Left('XXXXXXX XXXXX,5)

Select Right('
XXXXXXX XXXXX',7)

LEN : Bir parametre alır. Parametre olarak gönderilen dtring tipteki verinin uzunluğunu geri döndürür.

Select Len('XXXXXXX XXXXX')

REPLACE : Üç parametre alır. Birinci parametre orjinal stringi, ikinci parametre değiştirilecek karakter bloğunu ve üçüncü parametre neyle değiştirileceği bilgisini içerir.

Select Replace('XXXXXXX XXXXX', 'XXXXXXX', 'TEST')