0% found this document useful (0 votes)
2 views2 pages

5 SQL

Uploaded by

qk687sbgt5
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views2 pages

5 SQL

Uploaded by

qk687sbgt5
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

STRING FONKSYONLAR

Tablodaki veri sütunlarındaki değerler içerisinde arama yaparken tüm veri


kullanılarak değil ama verinin belli bir kısmı ile işlem yapmak istenirse şimdiye kadar
anlatılan SELECT komutu formatı itibariyle yetersiz kalır. Bu durumda arama kriterlerine
bağlı olarak belli başlı deyimler ve operatörler ile birlikte SELECT komutu kullanılır.
LIKE deyimi: Like deyimi belirtilen alan içerisinde sizin belirlediğiniz formatlara uyan
verilerin gösterilmesi için kullanılır. Birlikte kullanılan operatörler de _(önemli değil), []
(yada), [*-*](arasında), [^*] (değil) operatörleridir.
_ (önemli değil) operatörü:% işaretinden farklı olarak belli karakterler için geçerlidir.

Örnek: ilk harfi m ikinci harfi önemli değil ama üçüncü harfi s olanları listelesin
select * from personeller where adi like 'm_r%'

[](yada operatörü]:Bir grup karakter elemanın toplu tanımı için kullanılır

Örnek:isimleri a,e,m ile başlayanları listeleyin


select adi,soyadi,PersonelID from personeller where adi like '[a,e,m]%'

[*-*] (arasında operatörü):sıralı alfabetik yada sayısal değerin tanımlanmasında


kullanılır.

Örnek: soyadları d ile n arasındaki harflerle başlayanları listeleyin


select adi,soyadi,PersonelID from personeller where soyadi like'[d-n]%'
Örnek: NakliyeUcreti 1-4 arasındaki rakamlarla başlayan kayıtları gösterin
select * from Satislar where NakliyeUcreti like'[1-4]%'

[^*](değil operatörü): Belirtilen karakter ile başlamayanları görmek istendiğinde


kullanılır.
--ünvan bilgisi s ile başlamayan kayıtları listeleyin
select adi,soyadi,PersonelID from personeller where unvan like '[^s]%'
--isimleri an ile başlamayan kayıtları listeleyin
select adi,soyadi,PersonelID from personeller where adi like '[^an]%'

Alan içerisindeki verilerin belli formatlarda görüntülenmesi yada alan içerisindeki verinin
içindeki veri parçalarına göre görüntüleme istendiğinde kullanılacak şekillendirme
deyimleri vardır (left, right, upper, lower, substring, ltrim, rtrim, reverse, replace,
charindex)

left: Alan içerisindeki verileri soldan itibaren kaç karakterini göstermek isterseniz
kullanılır.
Formatı: select left(alanadi,karaktersayısı) from tabloadi
Örnek: select left(adi,4) as adlar from personeller
right: Alan içerisindeki verileri sağdan itibaren kaç karakterini göstermek isterseniz
kullanılır.
Formatı: select right(alanadi,karaktersayısı) from tabloadi
Örnek: select right(unvan,5) from personeller
upper: Alan içerisindeki verileri büyük harflere dönüştürüp göstermek için kullanılır
Formatı: select upper(alanadi) from tabloadi
Örnek: select upper(soyadi) from personeller
lower: Alan içerisindeki verileri küçük harflere dönüştürüp göstermek için kullanılır
Formatı: select lower(alanadi) from tabloadi
Örnek: select lower(soyadi) from personeller

ltrim: Alandaki verilerin solda kalan boşluk bilgilerini atarak veriyi gösterir.
Formatı: select ltrim(alanadi) from tabloadi
Örnek: select ltrim(soyadi) from personeller
Örnek: select ' tbmyo'
Örnek: select ltrim(' tbmyo')
rtrim: Alandaki verilerin solda kalan boşluk bilgilerini atarak veriyi gösterir.
Formatı: select rtrim(alanadi) from tabloadi
Örnek: select rtrim(soyadi) from personeller
Örnek: select 'tbmyo '+'asasas'
Örnek: select rtrim('tbmyo ')+'asasas'
reverse: Alandaki verileri tersten yazılmış haliyle göstermek için kullanılır.
Formatı: select reverse(alanadi) from tabloadi
Örnek: select reverse(adi) from personeller
replace: Bir alan içerisindeki verilerden yada sizin girdiğiniz veriden değiştirmek
istediğinizi ve yerine konacak veriyi belirterek yer değiştirmesini sağlayabilirsiniz.
Formatı: select replace(alanadi,'değiştirilecek veri','yerine konacak veri')
Örnek: select replace(adi,'Nancy','Fatma') from personeller
Örnek: select replace('tbmyo bilgisayar müh','müh','Teknolojileri')
charindex:Bir karakter veya karakter grubunun bir alan içerisindeki verilerde kaçıncı
sırada yer aldığının bilgisini gösterir.
Formatı: charindex(veri,alanadi)
Örnek: select adi,charindex('an',adi) from personeller
Substring: Sorgu satırında belirtilen alan içerisinde belirtilen sıralar arasındaki karakter
grubunu göstermek için kullanılır.
Formatı: substring(alanadi,başlangıç_sıra_no,bitiş_sıra_no)
Örnek: personeller tablosundan soyadı sütunundaki verilerin 2 ila 4 arasındaki karakterleri
göstermesi istenirse
select soyadi,substring(soyadi,2,4) from personeller
Örnek: personeller tablosunda soyad alanındaki baştan ilk a ya kadar olan karakterleri
gösterin
select substring(soyadi,0,charindex('a',soyadi)) from personeller

LEN:String yada nümerik verilerin karakter uzunluk bilgisi döndürür


Örnek: personellerin soyadları kaç karakter öğrenmek istersek
select soyadi,len(soyadi) from personeller
Örnek: satışlar tablosundaki nakliyeucreti kaç basamaktan oluşuyor.
select len(nakliyeucreti) from satislar
Örnek: Musteriler tablosundaki MusteriAdi alanında Ad ve Soyad birlikte yazılmıştır.
Sadece soyadı almak istersek;
select SUBSTRING(MusteriAdi,charindex(' ',MusteriAdi),Len(MusteriAdi)-(charindex('
',MusteriAdi)-1)) from Musteriler
Örnek: Musteriler tablosundaki MusteriAdi alanında Ad ve Soyad birlikte yazılmıştır.
Sadece adı almak istersek;
select SUBSTRING(MusteriAdi,0,charindex(' ',MusteriAdi)) from Musteriler
TOP: Sorgunun oluşturduğu filtrelenmiş yada tüm listede en üstte yer alan değerleri
gösterir
Örnek: personeller tablosunu göster
select * from personeller
Örnek: personeller tablosundaki en üst 5 kaydı göster.
select top 5 * from personeller
Örnek: select * from satislar
select top 3 * from satislar
Örnek: select top 3 * from satislar order by NakliyeUcreti desc

You might also like