Jumat, 05 April 2013

fungsi dan operator di mysql

Operator
Nama
Keterangan
Logika AND
Mengecek nilai dalam
Mengubah nilai string ke biner string
&
Operasi bit AND
~
Membalik nilai bits
|
Operasi bit OR
^
Operasi bit  XOR
Operator Case
Pembagian hasil nilai Integer
/
Operator pembagian
Operator loiga untuk karakter NULL
=
Operator sama dengan
Lebih besar atau sama dengan
>
Perator lebih besar
Menguji nilai NOT NULL
Menguji  boolean benar/salah
Mengujin nilai NULL
Menguji  boolean benar/salah
Operator geser kekiri
Lebih kecil atau sama dengan
<
Lebih kecil
Pencocokan pola  tesks /mirip
-
Operator pengurangan
%
operator modulus
Mengecak yang  nilainya tidak sama dalam  range
Operator tidak sama dengan
Pembanding yang tidak mirip/sama
Pembandingan pola yang tidak sama dengan ekspresi
Membalik nilai
Logika OR
+
Operator penambahan
Pembandingan pola yang sama dengan ekspresi
Geser kekanan
Sama dengan operator REGEXP
*
Times operator
-
Jika didepan tanda bilangan nigatif
logika XOR
Urutan/hirarki Operator
Secara hirarki gabungan sejumlah operator  seperti pada urutan dibawaw ini :
INTERVAL
BINARY, COLLATE
!
- (unary minus), ~ (unary bit inversion)
^
*, /, DIV, %, MOD
-, +
<<, >>
&
|
=, <=>, >=, >, <=, <, <>, !=, IS, LIKE, REGEXP, IN
BETWEEN, CASE, WHEN, THEN, ELSE
NOT
&&, AND
XOR
||, OR
:=
:
mysql> SELECT 1+2*3;
-> 7
mysql> SELECT (1+2)*3;
-> 9
mysql> SELECT 1+’1′;
-> 2
mysql> SELECT CONCAT(2,’ test’);
-> ’2 test’
mysql> SELECT 38.8, CAST(38.8 AS CHAR);
-> 38.8, ’38.8′
mysql> SELECT 38.8, CONCAT(38.8);
-> 38.8, ’38.8′
Fungsi pembanding
Nama
Keterangan
COALESCE() Mencari nilai pertama non-NULL
GREATEST() Return the largest argument
IN() Mengecek nilai termasuk dealam anggota bagian himpunan
INTERVAL() Nilai index urutan dari bilangan satu ke bilangan berkutnya
ISNULL() Mengecek nilai NULL
LEAST() Mengasilkan nilai yang terkecil
NOT IN() Kebalikan dari IN( )
STRCMP() Membandingkan 2 nilai string
Contoh :
COALESCE(value,...)
·                mysql> SELECT COALESCE(NULL,1);
·                        -> 1
·                mysql> SELECT COALESCE(NULL,NULL,NULL);
·                        -> NULL
GREATEST(value1,value2,...)
 
·                mysql> SELECT GREATEST(2,0);
·                        -> 2
·                mysql> SELECT GREATEST(34.0,3.0,5.0,767.0);
·                        -> 767.0
·                mysql> SELECT GREATEST('B','A','C');
·                        -> 'C'
LEAST(value1,value2,...)
 
·                mysql> SELECT LEAST(2,0);
·                        -> 0
·                mysql> SELECT LEAST(34.0,3.0,5.0,767.0);
·                        -> 3.0
·                mysql> SELECT LEAST('B','A','C');
·                        -> 'A'
INTERVAL(N,N1,N2,N3,...)
·                mysql> SELECT INTERVAL(23, 1, 15, 17, 30, 44, 200);
·                        -> 3
·                mysql> SELECT INTERVAL(10, 1, 10, 100, 1000);
·                        -> 2
·                mysql> SELECT INTERVAL(22, 23, 30, 44, 200);
·                        -> 0
expr IN (value,...)
·                mysql> SELECT 2 IN (0,3,5,7);
·                        -> 0
·                mysql> SELECT 'wefwf' IN ('wee','wefwf','weg');
·                        -> 1
Logical Operators
Nama
Keterangan
AND, && Logika AND
NOT, ! Logika value
||, OR Logika  OR
XOR Logika XOR
Kontrol Kondisi
Nama Keterangan
CASE Oprasi Case
IF() Kondisi If/else
IFNULL() Kondisi if/else nilai NULL
NULLIF() hasil NULL jika expr1 = expr2 benar
CASE nilai WHEN [pembanding_1] THEN hasil_1 [WHEN [pembanding_2] THEN hasil_2…] [ELSE hasil_3] END

CASE WHEN [kondisi_2] THEN hasil_1 [WHEN [kondisi_2] THEN hasil_2 …] [ELSE hasil_n] END

mysql> SELECT CASE 1 WHEN 1 THEN ‘one’
->     WHEN 2 THEN ‘two’ ELSE ‘more’ END;
-> ‘one’
mysql> SELECT CASE WHEN 1>0 THEN ‘true’ ELSE ‘false’ END;
-> ‘true’
mysql> SELECT CASE BINARY ‘B’
->     WHEN ‘a’ THEN 1 WHEN ‘b’ THEN 2 END;
-> NULL
IF(expr1,expr2,expr3)
Jika expr1 benar hasil expr2, salah expr3
mysql> SELECT IF(1>2,2,3);
        -> 3
mysql> SELECT IF(1<2,'yes','no');
        -> 'yes'
mysql> SELECT IF(STRCMP('test','test1'),'no','yes');
        -> 'no'
SELECT IF (agama='1','Islam',IF(agama='2','Kristen',IF(agama='3','Katholik',IF(agama='4','Hindu','Budha')))) as agm 
FROM mhs
IFNULL(expr1,expr2)
Jika expr1 tidak  NULL hasil expr1 , jika tidak expr2
mysql> SELECT IFNULL(1,0);
        -> 1
mysql> SELECT IFNULL(NULL,10);
        -> 10
mysql> SELECT IFNULL(1/0,10);
        -> 10
mysql> SELECT IFNULL(1/0,'yes');
        -> 'yes'

mysql> CREATE TABLE tmp SELECT IFNULL(1,'test') AS test;
mysql> DESCRIBE tmp;
+-------+---------+------+-----+---------+-------+
| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| test  | char(4) |      |     |         |       |
+-------+---------+------+-----+---------+-------+
NULLIF(expr1,expr2)
Akan menghasilkan nilai NULL jika  expr1 = expr2 bernilai benar, jika tidak hasil sama dengan  expr1. Ini sama dengan operasi CASE WHEN expr1 = expr2 THEN NULL ELSE expr1 END.
mysql> SELECT NULLIF(1,1);
        -> NULL
mysql> SELECT NULLIF(1,2);
        -> 1

Fungsi String
Nama
Keterangan
ASCII() Mengubah nilai karakter menjadi nilai ASCII
BIN() Bilangan integer ke bilangan biner
BIT_LENGTH() Penjang bit bilangan
CHAR_LENGTH() Memperoleh panjang karakter
CHAR() Memperoleh nilai interger ke karakter ASCII
CHARACTER_LENGTH() Sama dengan CHAR_LENGTH()
CONCAT_WS() Penggabungan teks, dengan kerakter pemisah
CONCAT() Penggabungan teks
ELT() Menampilkan nilai string menurut index urutan
FORMAT() Menampilkan format nilai anggka dengan pemisah titik atau koma
LCASE() Sama dengan LOWER()
LENGTH() Mencari nilai panjar string
SUBSTR() Mengambil potongan sederitan karakter
SUBSTRING() Sama dengan SUBSTR()
TRIM() Menhilangkan karater blank/space
UCASE() Sama dengan UPPER()


UPPER() Sama dengan UCASE()

Tidak ada komentar:

Posting Komentar