16 December 2011

Syntax Dasar SQL Oracle

Untuk yang belajar Oracle khususnya Oracle 10g, ni saya kasih beberapa syntax yang mungkin bisa bermanfaat buat kalian semua.... Syintax ini saya dapat dari pelatihan Oracle gan.... Sebelumnya kita masuk dulu ya sebagai user scott, soalnya saya pake ini di scott gan.....cekidot.

_________ Cari posisi karakter A di kolom ename _________


select ename DATA_ASLI,
INSTR(ename,'A') "posisi 'A'"
from emp
WHERE deptno<=20;

DATA_ASLI  posisi 'A'
---------- ----------
SMITH               0
JONES               0
CLARK               3
SCOTT               0
KING                0
ADAMS               1
FORD                0
MILLER              0

______ Cari Posisi karakter A yang kedua dikolom ename _________

select ename DATA_ASLI,
INSTR(ename,'A,1,2') "posisi 'A'"
from emp
WHERE deptno<=20;

DATA_ASLI  posisi 'A'
---------- ----------
SMITH               0
JONES               0
CLARK               0
SCOTT               0
KING                0
ADAMS               0
FORD                0
MILLER              0


______ LPAD (x,y,z)_____

pesan tempat untuk string x sebanyak y digit, jika masih ada sisa letakan
padding disisi kiri dan padding diisi dengan karakter z

LPAD ('ABC',10,'+') = +++++++ABC

SELECT ename As Data,
LPAD(ename,15,'-') As "Hasil LPAD"
FROM emp
Where deptno=30;

DATA       Hasil LPAD
---------- ---------------
ALLEN      ----------ALLEN
WARD       -----------WARD
MARTIN     ---------MARTIN
BLAKE      ----------BLAKE
TURNER     ---------TURNER
JAMES      ----------JAMES


________ RPAD(X,Y,Z) ________
KEBALIKAN DARI LPAD

SELECT ENAME AS DATA,
RPAD(ENAME,15,'-') AS "HASIL RPAD"
FROM EMP
WHERE DEPTNO=30;

DATA       HASIL RPAD
---------- ---------------
ALLEN      ALLEN----------
WARD       WARD-----------
MARTIN     MARTIN---------
BLAKE      BLAKE----------
TURNER     TURNER---------
JAMES      JAMES----------


______ TRIM(X FROM Y) ______

ambil karakter x yang ada disisi kiri atau kanan dari string y

TRIM ('A' FROM 'ABABA')--> BAB

SELECT TRIM('A' FROM 'ABABA') FROM DUAL;

TRI
---
BAB


______ SELECT TRIM(LEADING 'A' FROM 'ABABA') FROM DUAL; --> BABA ______

TRIM
----
BABA
______ SELECT TRIM(TRAILING'A' FROM 'ABABA') FROM DUAL; --> ABAB ______

TRIM
----
ABAB


______ REPLACE (X,Y,Z) _____
jika di string x ada karakter y maka ganti dengan z

SELECT ENAME DATA_ASLI,
REPLACE(ENAME,'A','-') HASIL_REPLACE
FROM EMP;

DATA_ASLI  HASIL_REPL
---------- ----------
SMITH      SMITH
ALLEN      -LLEN
WARD       W-RD
JONES      JONES
MARTIN     M-RTIN
BLAKE      BL-KE
CLARK      CL-RK
SCOTT      SCOTT
KING       KING
TURNER     TURNER
ADAMS      -D-MS

DATA_ASLI  HASIL_REPL
---------- ----------
JAMES      J-MES
FORD       FORD
MILLER     MILLER


_______ SELECT 'JACK AND JUE' DATA_ASLI,
REPLACE('JACK AND JUE','J','B1') HASIL_REPLACE
FROM DUAL;


DATA_ASLI    HASIL_REPLACE
------------ --------------
JACK AND JUE B1ACK AND B1UE

___ TRUNC (X,Y) ____
memotong bilangan x menjadi berapa digit y tanpa pembulatan

TRUNC(49.5758, 2) --> 49.57
TRUNC(49.5358, 2) --> 49.53

SELECT TRUNC (49.5358, 2),
TRUNC(49.5358, 1),
TRUNC(49.5358, 0)

FROM dual;

No comments:

Post a Comment