Merhaba arkadaşlar,
Bu akşam ki dersimizde sql dersini işleyeceğiz. Bu dersimizin konusu ise replace ve stuff fonksiyonun nasıl kullanıldığı, farklarının ne olduğu. Dilerseniz öncelikle replace ve stuff fonksiyonunu açıklayayım.
REPLACE FONKSİYONU
Sql ile veri sorgularken çoğunlukla istemediğimiz karakterler veya özel karakterler içeren veriler oluyor .Bu sebepten ötürü verileri sorgulamak için ek kodlar yazmak gerekbiliyor bunu ortadan kaldırmanın en kolay yolu Replace() fonksiyonudur.
STUFF FONKSİYONU
Stuff fonksiyonu, bir ifadenin belli bri yerini başka bir ifade ile değiştirmek için kullanılır. Kullanımı : Stuff(ifade,başlangıç indexi, karakter sayısı, yeni ifade) şeklindedir.
—————————————————————-
Replace bir metin içinde geçen belirli bir paterne uyan tüm metin veya karakterleri, istenilen başka bir karakter veya metin ile değiştirir. Örneğin;
1 select
REPLACE
(
'Umre'
,
'U'
,
'E'
)
2 -- Sonuç : Emre
Replace ile bir karakteri başka bir karakter ile değiştirebildiğimiz gibi, bir karakteri bir metin ile veya bir metni bir karakter veya başka bir metin ile değiştirebiliriz. Örneğin;
1 REPLACE
(
'Yazilim'
,
'm'
,
'm Mutfagi'
)
2 -- Sonuç: Yazilim Mutfagi
3 Select
REPLACE
(
'Yazilim Mutfagi'
,
'Mutfagi'
,
'M'
)
4 -- Sonuç: Yazilim M
—————————————————————-
Stuff replaceden farklı olarak verilen bir metin içinde belirli bir indexden başlayarak belirli bir karakter uzunluktaki kısmı başka bir metin veya karakter ile değiştirmek için kullanılır. Örneğin;
1
select
STUFF(
'Yazılım Teknoloji'
,7,1,
' Donanım'
)
2 -- Sonuç: Yazılım Donanım Teknoloji
3
Select
STUFF(
'abcdefg'
,2,3,
'ghjkl'
)
4 -- Sonuç: aghjklefg
—————————————————————-
Not (Replace Fonksiyonu):
* Eğer replace fonksiyonunda kullanılan parametrelerden herhangi birisi nvarchar tipinde ise Replace nvarchar tipinde bir değer döndürür, Diğer durumlarda varchar değer döndürür.
* Parametrelerden birisi NULL olursa dönüş değeri de null olur.
* Eğer değiştirilecek metin varchar(max) veya nvarchar(max) tiplerinden birisi değil ise, replace sonucunda dönücek değer en fazla 8000 karakter olur ve fazlası atılır. 8000 karakterden büyük bir metin döndürmek istiyorsanız, metni varchar(max) veya nvarchar(max)’a cast edin.
Not (Stuff fonksiyonu):
* Eğer başlangıç indexi yada uzunluk için verilen değer negatif ise veya başlangıç indexi metin uzunluğundan büyük ise NULL döner.
* Eğer başlangıç değeri 0 ise yine NULL bir değer döner.
- emresupcin
- Sql
- 9 Nisan 2013 - 19:22
- 1 Yorum
- 2628 Görüntülenme
replace replace fonksiyonu replace fonksiyonu kullanımı replave ve stuff fonksiyonu sql replace sql replace fonksiyonu sql stuff sql stuff fonksiyonu stuff stuff fonksiyonu stuff fonksiyonu kullanımı
‘Sonuç: Yazılım Donanım Teknoloji’ hocam bu sonucu yanlış basmışsınız.