bÖlÜm- 3: tek satirtarİh fonksİyonlari tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur...
TRANSCRIPT
![Page 1: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/1.jpg)
BÖLÜM- 3: TEK SATIR
FONKSİYONLARI
◦ SQL fonksiyonları nedir?
◦ Karakter Fonksiyonları
◦ Büyük küçük harf dönüştürme fonksiyonları
◦ Karakter işleme fonksiyonları
◦ Sayı fonksiyonları
◦ Tarih fonksiyonları
◦ Dönüştürme fonksiyonları
◦ NVL fonksiyonu
◦ DECODE fonksiyonu
◦ CASE ifadesi
www.mehmetsalihdeveci.net
![Page 2: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/2.jpg)
SQL FONKSİYONLARI
Veriler üzerindeki hesaplamaları tanımlamak.
Özel verileri düzenlemek.
Satır grupları için çıktıları ustaca kullanmak.
Tarihleri ve numaraları formatlamak.
Sütün veri tiplerini çevirmek.
www.mehmetsalihdeveci.net
![Page 3: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/3.jpg)
SQL FONKSİYONLARI
SQL fonksiyonları ikiye ayrılır
www.mehmetsalihdeveci.net
![Page 4: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/4.jpg)
TEK SATIR FONKSİYONLARI
function_name [(arg1, arg2,...)]
www.mehmetsalihdeveci.net
![Page 5: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/5.jpg)
KARAKTER FONKSİYONLARI
www.mehmetsalihdeveci.net
![Page 6: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/6.jpg)
BÜYÜK KÜÇÜK KARAKTER DÖNÜŞÜM
FONKSİYONLARI
Personellerin adlarını hepsi büyük,hepsi küçük ve ilk
harfi büyük olacak şekilde listeleyelim
select first_name,lower(first_name) "Küçük Harfli", upper(first_name) "Büyük Harfli",
initcap(lower(first_name)) "Ilk Harfi Büyük" from hr.employees;
www.mehmetsalihdeveci.net
![Page 7: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/7.jpg)
BÜYÜK KÜÇÜK KARAKTER DÖNÜŞÜM
FONKSİYONLARI
Adı steven olan personelleri listeleyelim select first_name,last_name,job_id from hr.employees where first_name='steven';
Tüm kayıtlar içerisinde ad kolonunu küçük karakterlere
dönüştürüp adı steven olan personelleri listeleyelim select first_name,last_name,job_id from hr.employees where lower(first_name)='steven';
Karakter fonksiyonları, yukardaki örneklerdeki gibi
where cümlesinde doğru sonuçları bulabilmek için
kullanılabilmektedir.
www.mehmetsalihdeveci.net
![Page 8: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/8.jpg)
KARAKTER İŞLEME FONKSİYONLARI
Personellerin adını,soyadını ve bunları birleştiren,
karakter sayılarını bulan ve bir karakterin hangi sırada
bulunduğu gibi vbvb.. Bilgileri listeleyelim
SELECT first_name,last_name, CONCAT(first_name, last_name) NAME,
job_id, LENGTH (last_name), INSTR(last_name, 'a') "'a' nerede?",
LPAD(first_name,10,'*') SOLA_DOLDUR, RPAD(first_name,10,'-') SAGA_DOLDUR,
REPLACE(first_name,'e','a') DEGISTIR,TRIM(' HELLO WORLD ') TEMIZLE
FROM hr.employees WHERE SUBSTR(job_id, 4) = 'REP';
www.mehmetsalihdeveci.net
![Page 9: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/9.jpg)
SAYI FONKSİYONLARI
ROUND : Yuvarlama yapar
TRUNC: Virgülden sonrasını keser
MOD: Mod alır
SIGN: Sayının işaretini belirler
FLOOR: Yuvarlama yapar
www.mehmetsalihdeveci.net
![Page 10: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/10.jpg)
SAYI FONKSİYONLARI
Round fonksiyonuna verilen parametreye göre çıkan
değerleri listeleyelim SELECT ROUND(45.923),ROUND(45.943,1),ROUND(45.924,2),ROUND(44.923,-1),ROUND(55.923,-
2) FROM DUAL;
Trunc fonksiyonuna verilen parametreye göre çıkan değerleri listeleyelim
SELECT TRUNC(45.923), TRUNC(45.943,1),TRUNC(45.953,2),TRUNC(45.923,-1),TRUNC(45.923,-2) FROM DUAL;
www.mehmetsalihdeveci.net
![Page 11: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/11.jpg)
SAYI FONKSİYONLARI
Floor ve Mod fonksiyonlarının çıktılarını listeleyelim
SELECT FLOOR(46.993) FROM DUAL;
select mod(1245,10) from dual;
www.mehmetsalihdeveci.net
![Page 12: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/12.jpg)
TARİH FONKSİYONLARI
www.mehmetsalihdeveci.net
![Page 13: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/13.jpg)
TARİH FONKSİYONLARI
Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir
taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim select MONTHS_BETWEEN (TO_DATE ('01.08.2013', 'dd.mm.yyyy'), TO_DATE ('01.01.2013',
'dd.mm.yyyy') ) kac_ay,
sysdate simdi, add_months(sysdate,5) ay_ekle,
next_day(sysdate,'MONDAY') sonraki_ptesi,
last_day(sysdate) ayin_son_gunu,
round(sysdate-60,'MONTH') r1,
round(sysdate,'YEAR') r2,
trunc(sysdate ,'MONTH') t1,
trunc(sysdate ,'YEAR') t2
from dual;
www.mehmetsalihdeveci.net
![Page 14: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/14.jpg)
TARİHLER İLE ARİTMETİK İŞLEMLER
Personellerin işe giriş tarihlerinden 7 gün çıkarılmış
halini ve 1 saat eklenmiş halini listeleyelim. SELECT first_name,last_name, hire_date,hire_date-7,hire_date+1/24
FROM hr.employees
WHERE department_id = 90;
www.mehmetsalihdeveci.net
![Page 15: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/15.jpg)
DÖNÜŞTÜRME FONKSİYONLARI
www.mehmetsalihdeveci.net
![Page 16: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/16.jpg)
DÖNÜŞTÜRME FONKSİYONLARI
Implicit dönüştürme fonksiyonları
Explicit dönüştürme fonksiyonları
www.mehmetsalihdeveci.net
![Page 17: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/17.jpg)
TO_CHAR FONKSİYONU (TARİH)
Tarih ve zamanlar için :
Kullanımı : TO_CHAR(tarih,’format’)
Büyük küçük harf ayırt eder ve tek tırnak içinde
yazılmalıdır.
Geçerli herhangi bir tarih formatı içermelidir.
Tarih değerinden bir virgül ile ayrılır.
www.mehmetsalihdeveci.net
![Page 18: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/18.jpg)
TO_CHAR FONKSİYONU (TARİH)
Personellerin işe giriş tarihini ekran görüntüsündeki
gibi listeleyelim
select hire_date,
to_char(hire_date,'dd.mm.yyyy') Noktali,
to_char(hire_date, 'DD Month YYYY') "Ayri Ayri",
to_char(hire_date, 'Ddspth Month YYYY HH:MI:SS') "Inci incili Tarih"
from hr.employees;
www.mehmetsalihdeveci.net
![Page 19: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/19.jpg)
TO_CHAR FONKSİYONU (SAYI)
www.mehmetsalihdeveci.net
![Page 20: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/20.jpg)
TO_CHAR FONKSİYONU (SAYI)
Personellerin maaşlarını ekran görüntüsündeki gibi
listeleyelim
SELECT first_name,last_name,salary,
TO_CHAR(salary, '$99,999.00') SALARY1,
TO_CHAR(salary, '99,999.00') SALARY2,
TO_CHAR(salary, '99990D0000') SALARY3
FROM hr.employees;
www.mehmetsalihdeveci.net
![Page 21: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/21.jpg)
TO_NUMBER VE TO_DATE FONKSİYONLARI
TO_NUMBER(char [, ‘format’])
Bir karakter dizisini belirtilen bir formatta sayıya çevirir.
TO_DATE(char [, ‘format’])
Bir karakter dizisini belirtilen bir formatta tarihe çevirir.
select TO_NUMBER('1453'),SYSDATE,
TO_DATE('18/07/2014','dd.mm.yyyy'),
TO_DATE('20140315', 'yyyymmdd'),
TO_DATE('070910', 'MMDDYY')
FROM dual;
www.mehmetsalihdeveci.net
![Page 22: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/22.jpg)
İÇ-İÇE FONKSİYONLAR
Fonksiyonlar iç içe çağrılabilirler.
Aşağıdaki şekilde en içteki fonksiyon en önce çalışır.
İçten dışa doğru sonuçlar aktarılır.
www.mehmetsalihdeveci.net
![Page 23: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/23.jpg)
İÇ-İÇE FONKSİYONLAR
Personellerin adını,soyadını ve Soyadının ilk 6 karakteri
ile _US I birleştirip büyük harfe dönüşecek şekilde
listeleyelim.
SELECT first_name, last_name,UPPER(CONCAT(SUBSTR (LAST_NAME, 1, 6), '_US'))
FROM hr.employees;
www.mehmetsalihdeveci.net
![Page 24: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/24.jpg)
NVL FONKSİYONU
Null değerini gerçek değerlere dönüştürür.
Tarih, karakter ve sayı tiplerinde kullanılabilir.
Data tipleri uyumlu olmalıdır.
NVL(expr1, expr2)
Personellerin aylık maaşlarını,prim oranlarını ve yıllık
maaşlarını listeleyelim SELECT last_name, salary, NVL(commission_pct, 0),(salary*12) +
(salary*12*NVL(commission_pct, 0)) AN_SAL FROM hr.employees;
www.mehmetsalihdeveci.net
![Page 25: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/25.jpg)
DECODE FONKSİYONU
Parametre olarak verilen sütun değerini yorumlayarak
yeni değerler üretilmesini sağlar.
Farklı dillerdeki IF-THEN-ELSE yapısı gibi işlem
görerek çözme işlemi yapar.
www.mehmetsalihdeveci.net
![Page 26: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/26.jpg)
DECODE FONKSİYONU
Personellerin içinde IT_PROG pozisyonunda olanlara
%10,ST_CLERK pozisyonunda olanlara %15 ve SA_REP
pozisyonunda olanlara %20 zam olacak şekilde bilgileri
listeleyelim
SELECT last_name, job_id, salary,
DECODE(job_id, 'IT_PROG', 1.10*salary, 'ST_CLERK', 1.15*salary, ‘SA_REP', 1.20*salary,
salary) "Düzenlenmis Maas“ FROM hr.employees order by 1;
www.mehmetsalihdeveci.net
![Page 27: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/27.jpg)
CASE İFADESİ
Birçok sütun değerine göre yorum yaparak yeni değerler
elde edilmesini sağlar.
www.mehmetsalihdeveci.net
![Page 28: BÖLÜM- 3: TEK SATIRTARİH FONKSİYONLARI Tarih fonkisyonlarıyla 2 tarih arasında kaç ay bulunur bir taihe sayı eklendiğinde ne olur vbvb.. Bilgileri listeleyelim](https://reader033.vdocuments.pub/reader033/viewer/2022041610/5e37137baa10fa57bc4c9754/html5/thumbnails/28.jpg)
CASE İFADESİ
Personellerin içinde SH_CLERK pozisyonunda olanlara
%10, AD_ASST pozisyonunda olanlara %15 ve MK_REP
pozisyonunda olanlara %20 zam olacak şekilde bilgileri
listeleyelim SELECT first_name,last_name, job_id, salary,
CASE job_id WHEN 'SH_CLERK' THEN 1.10*salary
WHEN 'AD_ASST' THEN 1.15*salary
WHEN 'MK_REP' THEN 1.20*salary
ELSE salary END "Düzenlenmis Maaslar"
FROM hr.employees;
www.mehmetsalihdeveci.net