SQL String Functionları (MSSQL Server)
pro_imaj20.09.2005 - 08:57:38
SQL FUNCTIONLARI
Not: Aşağıdaki SQL Function’ları Sql Server 2000 de denemiştir.
STRING FONKSIYONLARI
Islem_Yapilacak_Alan :=Veri tabanındaki işlem yapılacak alandır.
Siralama:=Veritabanındaki Evrak numarası, sıralama yapmak için kullanacağız. (Bu alan zorunlu dildir.)
TABLE_ADI:=Veri tabanın ismidir. (table ismi)


*********************************************************************
REVERSE:Veri tabanındaki alanı tersten yazar.

Açıklama;
Aşağıdaki örnekte TABLE_ADI veri tabanındaki Islem_Yapilacak_Alan alanındaki verileri tersten yazar.

Kod;

***************************************************
SELECT REVERSE(Islem_Yapilacak_Alan) as'Tersten Yaz'
FROM TABLE_ADI
ORDER BY Siralama
***************************************************


*********************************************************************
LEFT :Veri tabanındaki ilgili alan belirtilen karakter kadar soldan yazar.

Açıklama ;
Aşağıdaki örnekte TABLE_ADI veri tabanındaki Islem_Yapilacak_Alan alanının 5 tane karakterini listeletiyoruz.


Kod;


***************************************************
SELECT LEFT(Islem_Yapilacak_Alan, 5)AS 'SOLDAN İLK 5 KARAKTERİ YAZIYORUZ'
FROM TABLE_ADI
ORDER BY Siralama
***************************************************


*********************************************************************
LEN : İlgili alanın karakter sayısını verir.

Açıklama ;
Aşağıdaki örnekte TABLE_ADI veri tabanında Islem_Yapilacak_Alan alanında kaç tane karakter varsa onun sayısını verir.

Kod;

***************************************************
SELECT LEN(Islem_Yapilacak_Alan),Islem_Yapilacak_Alan AS 'Karakter Sayısını Verir'
FROM TABLE_ADI
ORDER BY Siralama
***************************************************



*********************************************************************
LOWER : Veri tabanındaki Büyük harfleri küçük harf yapar.

Açıklama;
Aşağıdaki kodda TABLE_ADI veri trabanındaki Islem_Yapilacak_Alan alanındaki 1 karakterden başlayıp 20 karaktere kadar küçük harfe çevirir.
Not: eğer 20 değeri 5 olarak değiştirse sadece 5 karakteri değiştir ve diğer karakterleride listede göstermez.


Kod;

***************************************************
SELECT LOWER (SUBSTRING(Islem_Yapilacak_Alan,1,20)) AS 'Karakter'
FROM TABLE_ADI
ORDER BY Siralama
***************************************************




*********************************************************************
REPLACE : Değiştirme /Güncelleme işlemi için kullanılır.

Açıklama ;
Bu fonksiyon ile TABLE_ADI veri tabanında ve Islem_Yapilacak_Alan alanındaki UZUNLAR yazan her şeyi KISALAR olarak değiştiriyor.
Yani ilk yazılacak değiştirilecek table ikinci ise değiştirilecek yazı son yazılacak yazı


Kod;

***************************************************
SELECT REPLACE(Islem_Yapilacak_Alan,'UZUNLAR','KISALAR') FROM
TABLE_ADI
ORDER BY Siralama
***************************************************


*********************************************************************
QUOTENAME : Verileri Köşeli parantez ([]) içine almaya yarar.

Açıklama ;
Bu fonksiyon TABLE_ADI veri tabandaki Islem_Yapilacak_Alan tablesindeki verileri [ ] köşeli parantez içine alarak yazar.

Kod;

***************************************************
SELECT QUOTENAME (Islem_Yapilacak_Alan) FROM TABLE_ADI ORDER BY Siralama
***************************************************


*********************************************************************
REPLICATE : Bu fonksiyon veriyi tekrar yazdırmaya yarar.

Açıklama;
Aşağıdaki örnek te TABLE_ADI veri tabanında Islem_Yapilacak_Alan tablesindeki verileri 2 kere yazıcak. (buradaki 2 değeri isteğe göre artırılabilinir.

Kod;

***************************************************
SELECT REPLICATE(Islem_Yapilacak_Alan,2)as 'Veriyi Takrar Yazar'
FROM TABLE_ADI
ORDER BY Siralama
***************************************************

*********************************************************************

UPPER : Verileri büyük harfe çevirmeye yarar.

Açıklama ;
Bu function TABLE_ADI veri tabanındaki Islem_Yapilacak_Alan alanındaki verilerin hepsini büyük harfe çevirir.

Kod;

***************************************************
SELECT UPPER(RTRIM(Islem_Yapilacak_Alan)) AS 'Hepsini Büyük Yaz'
FROM TABLE_ADI
ORDER BY Siralama
***************************************************


*********************************************************************

SUBSTRING : İstenilen karakterden istenilen karaktere kadar silme işlemi yapıyor

Açıklama ;
Bu fonksiyon TABLE_ADI veri tabanındaki Islem_Yapilacak_Alan alanındaki verileri 1 karakterden başlayarak 10 karaktere kadar alıyor diğer şeyleri siliyor.
Not: 1 değerini değiştirisek başlangıç değerini değiştirmiş oluruz. 10 değerini değiştirisek karakter uzunluğunu değiştirmiş oluyoruz
1 başlangıç karakteri 10 ise alınacak karakter sayısı.

Kod;

***************************************************
SELECT Islem_Yapilacak_Alan, SUBSTRING(Islem_Yapilacak_Alan, 1, 10) AS 'Seçilen alan kadarı al'
FROM TABLE_ADI
ORDER BY Siralama
***************************************************


*********************************************************************
STUFF : istenilen karaktersen istenilen karaktere kadar silme işlemi yapıyor bunun yanı sıra silinen verinin yerine yeni veride eklenebiliyor.

Açıklama ;
Bu fonksiyon ile TABLE_ADI veri tabanındaki Islem_Yapilacak_Alan alanındaki verileri 2 karakterden başlayarak 3 karakter silmek ve silinen yere de istenen kelimeyi yazıyoruz.
Not: 2 yazılı yer 2 karakterden başlanacağını 3 ise 3 karakter alınacağını ifade ediyor ve bu alınan karakteri siliyoruz. Ve istediğimiz değeri yazıyoruz.

Kod;

***************************************************
SELECT STUFF(Islem_Yapilacak_Alan, 2, 3, 'deneme')
FROM TABLE_ADI
ORDER BY Siralama
***************************************************



*********************************************************************
SPACE :Bu fonksiyon boşluk vermeye yarıyor.
Açıklama ;
Aşağıdaki örnekte ben iki fonksiyon daha kullandım tam belli olsun diye. Aşağıda TABLE_ADI veri tabanındaki Islem_Yapilacak_Alan alanındaki verilere bir virgül koyarak ve 2 boşluk atarak yan yana yazdırdım burada space komutu ile 2 boşluk vermiş oldum.

Kod;

***************************************************
SELECT RTRIM(Islem_Yapilacak_Alan) + ',' + SPACE(2) + LTRIM(Islem_Yapilacak_Alan)
FROM TABLE_ADI
***************************************************


*********************************************************************
RIGHT : Belirtilen karakter uzunluğu kadar sağdan karakter alır.

Açıklama ;
Bu fonksiyon TABLE_ADI veri tabanındaki Islem_Yapilacak_Alan alanındaki verilerin sağdan 5 karakterini almaya yara. 5 değişkendir.

Kod;

***************************************************
SELECT RIGHT(Islem_Yapilacak_Alan, 5)
FROM TABLE_ADI
***************************************************



Saygılarımla,
Kolay gelsin.



Yazar : M. Uğur DOĞAN
Eylül 2005
 
NOT : Bu sayfa google'un siteyi indekslemesi içindir. www.delphiturkiye.com/forum/ adresini kullanınız!
1998-2006 www.delphiturkiye.com