KARAKTER FONKSİYONLARI – 2
Character-Manipulation Functions
a-) CONCAT
CONCAT birleştirme yapmak için kullanılır. Örneğin;
CONCAT(‘Murat’, ‘Yeşiltepe’) yaptığımızda sonuç olarak à MuratYeşiltepe döner.
b-) SUBSTR
SUBSTR string içinden belirli bir bölümü almak için kullanılır. Örneğin;
SUBSTR(‘Yeşiltepe’,0,5) yaptığımızda sonuç olarak à Yeşil döner.
Yukarıda 0 ‘ dan başla 5 tane al demiş olduk. Yani en baştan başlayarak ilk 5 harfi aldı.
c-) LENGTH
LENGTH uzunluk belirlemek için kullanılır. Örneğin;
Çalışanlar tablosunda isim ve soyisim kolonları olsun. Murat YEŞİLTEPE isminde birisi o şirkette çalışıyor olsun. Bu durumda isim kolonuna Murat soyisim kolonuna YEŞİLTEPE kaydı girilecektir. Eğer ben LENGTH(isim) yaparsam Murat ismi 5 harf olduğundan sonuç olarak uzunluk olarak bana dönen cevap 5 olacaktır.
d-) INSTR
INSTR stringin içinde arama yapmak için kullanılır. Yani bir stringin içinde bir harf arıyorsak ve o harf stringin içinde varsa bize kaçıncı sırada olduğunu dönderecektir. Örneğin;
INSTR(‘Murat’, ‘r’) yaptığımızda sonuç olarak à 3 döner.
e-) LPAD | RPAD
Burada PAD ‘ lerin başında olan L ‘ nin left ( yani sol ) , R ‘ nin ise right ( yani sağ ) olduğunu anlamalıyız. PAD kısımları ise dolgu’dur. Yani LPAD ‘ i kullandığımızda sola dolgu yaparız, RPAD ‘ i kullandığımızda ise sağa dolgu yaparız. Örneklerle daha iyi anlaşılacaktır.
LPAD(salary, 10, ‘*’) yaptığımızda eğer birisinin maaşı 5000 ise à ******5000 sonucu döner.
RPAD(salary, 10, ‘*’) yaptığımızda eğer birinin maaşı 50000 ise à 50000***** sonucu döner.
f-) TRIM
TRIM kırpmak, budamak anlamındadır. Örneğimize bakacak olursak;
TRIM(‘H’ FROM ‘HelloWorld’) yaptığımızda sonuç olarak à elloWorld dönecektir.
g-) REPLACE
REPLACE ‘ in kelime anlamı “değiştirmek” tir. Üç tane parametre alır. Örneğin;
REPLACE(‘JACK and JUE’, ‘J’, ‘BL’) yaptığımızda sonuç olarak à BLACK and BLUE döner.
Yukarıdaki örnekte J yazan yerleri BL ile değiştir demiş olduk.
ÖRNEK
SELECT employee_id, CONCAT(first_name, last_name) NAME, job_id, LENGTH (last_name), INSTR(last_name, ‘a’) “Contains ‘a’?” FROM employees
WHERE SUBSTR(job_id, 4) = ‘REP’;
Yukarıdaki örnekte;
employees tablosundan employee_id ‘ i, first_name ile last_name ‘ in birleştirilmiş halini NAME isimli alias ‘ a atayarak,
job_id ‘ i , last_name ‘ in uzunluğunu, last_name içinde a harfinin kaçıncı sırada geçtiğini Contains ‘a’? isimli alias ‘ a atayarak,
getireceksin ama bir şartım var job_id değerinin 4. karakterinden sonraki (4. Karakter dahil) kısmı REP olacak” demiş olduk.