CEIL(kolonlsabit) : Verilen değerden büyük en yakın tamsayıyı döndürür.
Bu komut ile kolon isimlerini koşullara bağlayarak verilerin durumuna gôre değişik kolon isimlerini seçmek
mümkündür. Yapısal dillerdeki 'if-then-else' yapısının ilkel bir ômeğidir.
DECODE(kolon/ifade,ara1,sonuc1,[ara2,sonuc2, ...,]default)
SELECT ENAME,JOB,
DECODE(JOB,'CLERK','WORKER','MANAGER','BOSS','UNDIFIENED')
DECODE_JOB FROM EMP
ENAME JOB DECODE_JOB
SMITH CLERK WORKER
ALLEN SALESMAN UNDIFIENED
WARD SALESMAN UNDIFIENED
JONES MANAGER BOSS
MARTIN SALESMAN UNDIFIENED
BLAKE MANAGER BOSS
CLARK MANAGER BOSS
SCOTT ANALYST UNDIFIENED
KING PRESIDENT UNDIFIENED
TURNER SALESMAN UNDIFIENED
ADAMS CLERK WORKER
JAMES CLERK WORKER
FORD ANALYST UNDIFIENED
MILLER CLERK WORKER
GROUP BY ifadesi ile sorgulanan satırlar belirli guruplara ayrılarak bu gruplar üzerinde grup fonksiyonları kullanılır.
SELECT JOB,AVG(SAL) FROM EMP
GROUP BY JOB;
J
JOB AVG(SAL)
ANALYST 3000
CLERK 1037.5
MANAGER 2758.3333
PRESIDENT 5000
SALESMAN 1400
Her iş için ayrı ayrı ne kadar ortalama maaş verildiğini hesaplar.
SELECT DEPTNO,JOB,AVG(SAL) FROM EMP
GROUP BY DEPTNO,JOB;
DEPT NO JOB AVG(SAL)
10 CLERK 1300
10 MANAGER 2450
10 PRESIDENT 5000
20 ANALYST 3000
20 CLERK 950
20 MANAGER 2975
30 CLERK 950
30 MANAGER 2850
30 SALESMAN 1400
9 satırları seçildi.
Her bölümdeki farklı işler için ne kadar ortalama maaş verildiğini hesaplar. Grup fonksiyonları ile birlikte kullanılan kolon isimleri mutlaka GROUP BY ifadesi içinde yer almalıdır. Tersi durumda hatalı bir SQL cümlesi yazılmış olur.
Bir kolon değerinin NUll olup olmadığını anlamanın tek yolu bu işleci kullanmaktır. '=NUll' işleci kullanmak aynı şey değildir ve hiçbir sonuç vermez.
SELECT ENAME,MGR FROM EMP WHERE MGR IS NULL;
Yukarıdaki ömek yöneticisi olmayan çalışanların Iistesini üretir.
Giriş olarak okuduğu karakter dizisini küçük harflere
önüştürür. 'kolonlsabit' şeklindeki gösterim bir tek parametre girileceğini ve bu parametrenin bir kolon adı ya da
bir sabit karakter dizisi olabileceğini gösterir.
SELECT LOWER(DNAME),LOWER('SQL') FROM DEPT;