Sunday, February 27, 2011

Fungsi-Fungsi pada mySQL

Fungsi Sistem
Fungsi Sistem adalah fungsi yang memberikan informasi tentang penggunaan server database oleh pemakai.

DATABASE()
Fungsi ini bermanfaat untuk menampilkan informasi database apa yang sedang digunakan oleh pemakai. Systaxnya; select DATABASE();

LAST_INSERT_ID()
Fungsi ini digunakan untuk menampilkan informasi data yang telah dihasilkan (di-generate) oleh MySQL pada kolom yang memakai tipe data AUTOINCREMENT. Syntaxnya; select LAST_INSERT_ID();

SESSION_USER()
Fungsi ini dapat menampilkan informasi pemakai yang sedang melakukan akses ke dalam server MySQL dan biasanya digunakan oleh pemakai atau administrator database untuk mengetahui siapa user yang sedang mengakses server MySQL. Syntaxnya; select SESSION_USER();

SYSTEM_USER()
Fungsi ini sama dengan fungsi SESSION_USER(). Syntaxnya; select SYSTEM_USER();

USER()
Fungsi ini juga sama dengan 2 fungsi di atas yakni fungsi SESSION_USER() dan SYSTEM_USER(). Syntaxnya; select USER();

VERSION()
Untuk mengetahui versi MySQL yang sedang kita pakai sekarang, kita bisa menggunakan fungsi ini. Syntaxnya; select VERSION();

BENCHMARK(x, ekspresi)
Fungsi yang bermanfaat guna mengetahui lama waktu yang dipakai server untuk mengerjakan suatu perintah (ekspresi) sejumlah x kali. Dengan demikian kita dapat menilai berapa cepat server mengevaluasi sebuah query. Syntaxnya; select BENCHMARK(x, ekspresi); Contoh penggunaanya; select BENCHMARK(20, select * from daftaralamat);

LOAD_FILE(namafile)
Fungsi ini digunakan untuk membuka file dan memberikan isinya sebagai string. File yang di load harus ada dalam server dan pemakai yang menggunakan fungsi ini harus memiliki hak akses FILE. Contoh penggunaanya; update daftaralamat SET gambar = LOAD_FILE('/home/people/Andra.gif') where id_daftar_alamat='3'; atau select LOAD_FILE('c:/boot.ini');


Fungsi Agregat
Fungsi agregat adalah fungsi standar di dalam SQL yang digunakan untuk summary dan merupakan fungsi statistik dasar yang dikenakan pada suatu tabel atau query. Fungsi aritmetika adalah fungsi yang berhubungan langsung dengan manipulasi aritmetika. Fungsi agregate ini merupakan fungsi built-in yang hampir pasti ada dalam sistem database relasional.

AVG(ekspresi)
Fungsi ini digunakan untuk mencari rata-rata nilai dalam suatu kolom dari suatu tabel atau ekspresi. Ekspresi dalam fungsi AVG umumnya adalah nama kolom dengan tipe data umerik. Contohnya; select AVG(Harga) from Harga_Sendal;

COUNT(x)
Fungsi ini digunakan untuk menghitung jumlah record/baris dari suatu kolom atau suatu tabel. X merupakan nama kolom dari tabel yang ingin dicari jumlah baris datanya. Contoh; select COUNT(*) from Harga_Sendal;

MAX(ekspresi)
Fungsi ini digunakan untuk mencari nilai terbesar dari suatu kolom dalat suatu tabel atau ekspresi. Kolom yang dicari nilai terbesarnya memiliki tipe data numerik. Contoh; select MAX(Harga) from Harga_Sendal;

MIN(ekspresi)
Fungsi MIN() ini merupakan kebalikan dari fungsi MAX(). Fungsi ini mencari nilai terkecil dari suatu kolom dalam suatu tabel atau ekspresi. Contoh; select MIN(Harga) from Harga_Sendal;

STD(ekspresi) dan STDDEV(ekspresi)
Fungsi ini dapat kita gunakan untuk mendapatkan standar deviasi dari suatu kolom dalam suatu tabel. Ekspresi biasanya menyatakan kolom dalam suatu tabel dengan tipe data numerik. Contoh; select STD(Harga) from Harga_Sendal;

SUM(ekspresi)
Fungsi ini digunakan untuk mendapatkan nilai total dari suatu kolom dalam suatu tabel atau ekspresi. Contoh; select SUM(Harga) from Harga_Sendal;




Fungsi Aritmetika

Penjumlahan (+)
Digunakan untuk menjumlahkan dua buah data numerik dengan hasil data numerik juga.
Contoh: select 3+2;
Hasil: 5

Pengurangan (-)
Digunakan untuk operasi pengurangan data numerik, dimana bilangan yang sebelah kiri dikurangkan dengan yang sebelah kanan. Menghasilkan data numerik.
Contoh: select 3-2; Hasil: 1

Perkalian (*)
Digunakan untuk melakukan operasi perkalian pada data numerik dan menghasilkan data numerik.
Contoh: select 3*2; Hasil: 6

Pembagian (/)
Digunakan untuk melakukan operasi pembagian data numerik, dimana bilangan sebelah kiri dibagi dengan bilangan yang ada disebelah kanan. Operasi aritmetika ini menghasilkan data numerik.
Contoh: select 8/2; Hasil: 4

Pembagian Sisa (%)
Digunakan untuk mendapatkan sisa bagi dari suatu operasi pembagian, bilangan disebelah kiri dibagi dengan bilangan yang disebelah kanan. Sisa dari hasil pembagian tersebut menjadi hasil dari operasi ini yang biasa disebut Modulus.
Contoh: Select 3%2; Hasil: 1

ABS(x)
Digunakan untuk mendapatkan nilai absolut dari suatu data numerik.
Contoh: Select ABS(-31); Hasil: 28

ACOS(x)
Fungsi ini dapat menghasilkan nilai arc cosine x, apabila x tidak bernilai antara -1 dan 1 maka akan menghasilkan NULL.
Contoh: Select ACOS(-0.98765); Hasil: 2,9842681197855

ASIN(x)
Dapat menghasilkan arc sinus x, juga akan menghasilkan NULL jika nilai x tidak bernilai antara -1 dan 1.
Contoh: Select ASIN(-0.98765); Hasil: -1,4134717929906

ATAN(x)
Menghasilkan arc tangent x.
Contoh: Select ATAN(5); Hasil: 1,373400766945

ATAN2(x, y)
Fungsi ini menghasilkan arc tangent x berdasarkan parameter y untuk menentukan kuadrant.
Contoh: Select ATAN2(5, 3); Hasil: 1,0303768265243

BIN(x)
Fungsi ini digunakan untuk mendapatkan nilai biner dari bilangan x dengan tipe data BIGINT. Hasil dari fungsi ini memiliki tipe data STRING.
Contoh: Select BIN(5); Hasil: "101"

CEILING(x)
Nilai yang dihasilkan dari fungsi ini dikonversikan menjadi BIGINT berupa nilai bilangan bulat terbesar yang tidak lebih kecil dari x.
Contoh: Select CEILING(3.123); Hasil: 4

CONV(x, daribasis, kebasis)
Digunakan untuk melakukan konversi suatu bilangan dari suatu basis bilangan ke basis bilangan lainnya. Hasil dari fungsi ini adalah STRING.
Contoh: Select CONV(7, 15, 3); Hasil: "21"

COS(x)
Digunakan untuk menghitung nilai cosinus x dalam radian.
Contoh: Select COS(7); Hasil: 0,7539022543433

COT(x)
Menghitung cotangent x.
Contoh: Select COT(7); Hasil: 1,1475154224051

DEGREES(x)
Dapat menghasilkan besar sudut dalam derajat, dari suatu x dalam radian.
Contoh: Select DEGREES(7); Hasil: 401,07045659158

EXP(x)
Menghitung e pangkat x.
Contoh: Select EXP(7); Hasil: 1096,6331584285

FLOOR(x)
Membulatkan bilangan ke integer terdekat yangtidak lebih besar dari x.
Contoh: Select FLOOR(7.98); Hasil: 7

FORMAT(num, dec)
Membuat format desimal "x.xxx.xxx.xx" dengan membulatkan angka yang didefenisikan dengan dec.
Contoh: Select FORMAT(12345.67, 5); Hasil: 12,345.67000

GREATEST(x, y, ...)
Fungsi ini digunakan untuk mendapatkan nilai terbesar dari daftar bilangan.
Contoh: Select GREATEST(9, 200, 344, 5, 3, 2); Hasil: 344

HEX(x)
Untuk menghasilkan bilangan hexadesimal dengan tipe data STRING dari x dengan tipe data BIGINT.
Contoh: Select HEX(17); Hasil: 11

LEAST(x, y, z, ...)
Fungsi ini digunakan untuk mendapatkan nilai terkecil dari daftar bilangan.
Contoh: Select LEAST(17, 3, 0, 100, 355); Hasil: 0

LOG(x)
Untuk mendapatkan nilai logaritma natural dari x.
Contoh: Select LOG(17); Hasil: 2,8332133440562

LOG10(x)
Menghasilkan logaritma dasar 10.
Contoh: Select LOG10(17); Hasil: 1,2304489213783

MOD(x, y)
Fungsi yang sama ketika menggunakan operator % yaitu untuk mendapatkan sisa bagi.
Contoh: Select MOD(17, 2); Hasil: 1

OCT(x)
Memberikan bilangan oktal dari suatu bilangan x dengan tipe data BIGINT. Nilai yang dihasilkan bertipe STRING.
Contoh: Select OCT(17); Hasil: 21

PI()
Tentu saja digunakan untuk mendapatkan nilai konstanta PI.
Contoh: Select PI(); Hasil: 3,141593

POW(x, y)
Menghitung x pangkat y.
Contoh: Select POW(17, 3); Hasil: 4913

POWER(x, y)
Sama dengan POW(x, y).

RADIANS(x)
Digunakan untuk menghasilkan nilai radian dari x dalam derajat. Merupakan kebalikan dari fungsi DEGREES(x).
Contoh: Select RADIANS(123); Hasil: 2,146754979953

RAND() dan RAND(seed)
Untuk mendapatkan bilangan random pada pecahan 0 sampai 1. Jika diberikan parameter seed maka jika seed sama bilangan randomnya juga sama dan bisa diprediksi.
Contoh: Select RAND(); Hasil: 0,21512749066123
Contoh: Select RAND(123); Hasil: 0,92774286114401

ROUND(x)
Membulatkan bilangan x menjadi bilangan bulat integer.
Contoh: Select ROUND(1.23); Hasil: 1

ROUND(x, y)
Membulatkan angka termasuk dibelakang koma jika y didefenisikan.
Contoh: Select ROUND(1.2335, 3);
Hasil: 1,234

SIGN(x)
Digunakan untuk menentukan apakah nilai x bernilai positif, negatif atau nol. Fungsi ini akan memberikanan nilai -1 untuk data negatif, 1 untuk data positif dan 0 untuk data nol.
Contoh: Select SIGN(-9.2335); Hasil: 1

SQRT(x)
Untuk mencari akar kuadrat bilangan x.
Contoh: Select SQRT(2345); Hasil: 48,425200051213

TAN(x)
Digunakan untuk menghitung tangent x dalam radian.
Contoh: Select TAN(2345); Hasil: 4,960769223137

TRUNCATE(x, y)
Memotong bilangan desimal x hingga sejumlah angka dibelakang koma y.
Contoh: Select TRUNCATE(2345.987654, 3); Hasil: 2345,987




Fungsi String
Untuk melakukan manipulasi data teks atau string kita dapat menggunakan Fungsi String.

ASCI(x)
Fungsi ini digunakan untuk menghasilkan kode ASCII dari karakter pertama dalam suatu string x.
Contoh: Select ASCII('n'); Hasil: 110
Contoh: Select ASCII('N'); Hasil: 78

CHAR(x, y, z, ...)
Fungsi ini dapat menghasilkan nilai string berdasarkan daftar kode ASCII yang dijadikan parameter dalam fungsi.
Contoh: Select CHAR(65, 66, 40, 70); Hasil: AB(F

CHARACTER_LENGTH, CHAR_LENGTH
Pembahasan sama dengan LENGTH()

COALESCE(ekspresi1, ekspresi2, ...)
Fungsi ini dapat menghasilkan data yang bukan NULL yang pertama kali dari daftar ekspresi yang menjadi argumen dalam parameter. Ekspresi dapat berupa data null, string, numerik ataupun tanggal.
Contoh: Select COALESCE(NULL, 'Payah', 372); Hasil: Payah

CONCAT(x, y, z, ...)
Fungsi ini dapat menggabungkan beberapa string yang menjadi parameter. Tetapi jika ada nilai NULL dalam parameter string, maka hasil dari CONCAT adalah NULL.
Contoh: Select CONCAT('Satu', '2', 'Tiga'); Hasil: Satu2Tiga
Contoh: Select CONCAT('Satu', null, 'Tiga'); Hasil: (NULL)

DECODE(string_biner, string_ekspresi)
Mengembalikan nilai string biner yang di enkripsi, string enkripsi yang digunakan harus sama dengan string yang digunakan pada saat mengenkripsi. Fungsi ini merupakan kebalikan dari fungsi ENCODE().
Contoh: Select DECODE('Kambing', 'Mamalia'); Hasil: JF

ELT(x, a, b, c, ...)
Menghasilkan string pada posisi x dari daftar argumen yang menjadi parameter a, b, c, ...
Contoh: Select ELT(2, 'Panji', 'Dapur', 'Andra'); Hasil: Dapur

ENCODE(word, string_enkripsi)
Fungsi ini berguna untuk mengenkripsi suatu string word menggunakan kata sandi. Hasilnya adalah string biner yang telah dienkripsi.
Contoh: Select ENCODE('Kambing', 'Mamalia'), DECODE(ENCODE('Kambing', 'Mamalia'), 'Mamalia');
Hasil: 4>'M2
Hasil: Kambing

ENCRYPT(word[,seed])
Fungsi ini juga berfungsi untuk mengenkripsikan suatu string dengan kata sandi seed dalam 2 huruf, menggunakan fungsi crypt Unix. Fungsi ini menghasilkan string yang terinkripsi dan NULL jika dilakukan pada system operasi yang tidak memiliki fungsy crypt seperti MS Windows.
Contoh: Select ENCRYPT('Kambing', 'Ma'); Hasil: (NULL) *di Windows XP

FIELD(x, a, b, ...)
Fungsi ini untuk menentukan posisi dari string x dalam daftar argumen a, b, ...
Contoh: Select FIELD('Kambing', 'Kerbau', 'Sapi', 'Andra', 'Kambing', 'Unta'); Hasil: 4

FIND_IN_SET(x, stringlist)
Mirip dengan fungsi FIELD(x, a, b, ...). Hanya saja stringlist merupakan kelompok string yang dicari dipisah menggunakan koma tanpa spasi.
Contoh: Select FIND_IN_SET('Kambing', 'Kerbau,Sapi,Andra,Kambing,Unta'); Hasil: 4

INSERT(x, y, z,j)
Fungsi ini menghasilkan string x yang telah diganti isinya dengan string j mulai posisi ke y sebanyak z.
Contoh: Select INSERT('WemCyntia', 4, 2, 'Pisang'); Hasil: Andrasangtria

INSTR(x, y)
Fungsi ini merupakan kebalikan dari fungsi LOCATE(x, y) dan POSITION(x, y). Fungsi ini dapat menghasilkan nilai posisi string y di dalam string x.
Contoh: Select INSTR('Andra adalah te_no_net 711cr Cyntia', 'te_no_net'); Hasil: 14

LCASE(x)
Fungsi ini berguna untuk menjadikan semua karakter dalam string x menjadi tulisan dalam huruf kecil semua (lowercase).
Contoh: Select LCASE('Andra Cyntia'); Hasil: Andra Cyntia

LEFT(x, y)
Fungsi ini untuk mengambil sejumlah y karakter dari string x, mulai dari posisi awal.
Contoh: Select LEFT('Andra Cyntia', 5); Hasil: Andra

LENGTH(x)
Untuk mengetahui panjang string x, kita dapat menggunakan fungsi ini.
Contoh: Select LENGTH('Andra Cyntia'); Hasil: 12

LOCATE(x, y, z)
Untuk mengetahui posisi string x di dalam string y mulai dari posisi ke z.
Contoh: Select LOCATE('m', 'Andra', 2); Hasil: 3

LOWER(x)
Fungsi ini sama dengan fungsi LCASE(x).

LPAD(x, y, z)
Digunakan untuk menambahkan string z kepada string x di sebelah kiri apabila panjang string x lebih kecil dari y)
Contoh: Select LPAD('Andra', 12, 'We'); Hasil: WeWeWeAndra

LTRIM(x)
Berguna untuk menghilangkan spasi di sebelah kanan string x.
Contoh: Select LTRIM(' Andra' ); Hasil: Andra

MID(x, y, z)
Mengambil string x sebanyak z dimulai dari posisi ke y.


PASSWORD(password)
Menghasilkan string password yang disandikan.
Contoh: Select PASSWORD('Andra');

POSITION(x IN y)
Menghasilkan awal posisi dari string x yang pertama kali ditemukan dalam string y. Hasil 0 jika tidak ditemukan.

REPEAT(x, y)
Menghasilkan string x yang diulang sebayak y kali.
Contoh: Select REPEAT('Andra', 5);
Hasil: AndraAndraAndraAndraAndra



REPLACE(x, y, z)
Mengganti semua string y yang ditemukan dalam string x menggunakan string z.
Contoh: Select REPLACE('Andre Cyntia', 'e', 'a');
Hasil: Andra Cyntia

REVERSE(x)
Membalikkan urutan penulisan string x.
Contoh: Select REVERSE('Andra Cyntia'); Hasil: aitnyC ardnA

RIGHT(x, y)
Mengambil y karakter dari string x dimulai dari posisi paling kanan (akhir).
Contoh: Select RIGHT('Andra Cyntia', 4); Hasil: ntia

RPAD(x, y, z)
Menambahkan string z di sebelah kanan string x jika panjang string x lebih kecil dari y.
Contoh: Select RPAD('Andra', 12, 'Sat');

RTRIM(x)
Membuang semua spasi yang ada di sebelah kanan string x.
Contoh: Select RTRIM(' Andra Cyntia' ); Hasil: Andra Cyntia

SOUNDEX(x)
Menghasilkan sebuah string soundex dari string x.
Contoh: Select SOUNDEX('Andra Cyntia');

SPACE(x)
Membuat string spasi sebanyak x.
Contoh: Select SPACE(10); Hasil: " "

STRCMP(string1, string2)
Digunakan untuk menmbanding 2 buah string, jika jumlahnya sama akan diberi nilai 0, jika string1 string2 akan diberi nilai 1.
Contoh: Select STRCMP('Andra Cyntia', 'Andra Cyntia');
Hasil: 0

SUBSTRING_INDEX(x, y, z)
Digunakan untuk mendapatkan semua string x, setelah string y sebanyak z kali ditemukan. Jika z bernilai positif maka pointer bergerak dari kiri ke kanan dan sebaliknya.

TRIM([[BOTH or LEADING or TRAILING][x]FROM]y)
LEADING digunakan untuk membuang string x dari depan string y. TRAILING digunakan untuk membuang string x dari belakang string y. BOTH digunakan untuk membuang string x di depan dan belakang string y.
Contoh: Select TRIM('Andra Cyntia'); Select TRIM(LEADING 'Andra' FROM 'Andra Cyntia'); Select TRIM(BOTH 'Andra' FROM 'Andra Cyntia Andra');
Hasil: Andra Cyntia; Cyntia; Cyntia

UCASE(x)
Fungsi ini dapat mengubah string x menjadi huruf kapital semua.
Contoh: Select UCASE('Andra Cyntia'); Hasil: ANDRA CYNTIA

UPPER(x)
Fungsi ini sama dengan fungsi UCASE(x)



Fungsi Date-Time
Format tanggal dan jam dalam MySQL adalah tahun, bulan, tanggal, jam, menit dan detik. yyyy-mm-dd hh:mm:ss.
yyyy adalah tahun/year dalam format angka 4 digit.
mm adalah bulan/month dalam format angka 2 digit.
dd adalah tanggal/date dalam format angka 2 digit.
hh adalah jam/hour dalam format angka 2 digit.
mm adalah menit/minute dalam format angka 2 digit.
ss adalah detik/second dalam format angka 2 digit


ADDDATE(date, INTERVAL ekspresi_interval)
Digunakan untuk mendapatkan tanggal baru dengan cara menambahkan tanggal dengan data interval. x adalah tanggal awal, ekspresi_interval adalah data interval yang digunakan untuk mendapatkan tanggal baru.
Ekspresi Interval terdiri dari nilai dan tipe. Berikut ini tipe interval yang bisa disertakan:








SECOND
MINUTE
HOUR
DAY
MONTH
YEAR
MINUTE_SECOND
HOUR_MINUTE
DAY_HOUR
YEAR_MONTH
HOUR_SECOND
DAY_MINUTE
DAY_SECOND

Jumlah detik
Jumlah menit
Jumlah jam
Jumlah hari
Jumlah bulan
Jumlah tahun
menit:detik
jam:menit
jumlahhari:jumlahjam
tahun-bulan
jam:menit:detik
jumlahhari jam:menit
jumlahhari jam:menit:detik


Contoh: select ADDDATE("2010-04-14", INTERVAL 15 day);
Hasil: 2010-04-29

CURDATE() dan CURRENT_DATE()
Menghasilkan tanggal sekarang dari sistem komputer.
Contoh: Select CURDATE(); Hasil: 2010-04-26

CURTIME() dan CURRENT_TIME()
Menghasilkan waktu jam saat ini dari sistem komputer.
Contoh: Select CURTIME(); Hasil: 12:11:18

CURRENT_TIMESTAMP()
Menghasilkan waktu saat ini tanggal beserta jam dari sistem komputer.
Contoh: Select CURRENT_TIMESTAMP(); Hasil: 2010-04-26 12:12:38

DATE_ADD(date, INTERVAL ekspresi_interval)
Sama seperti ADDDATE(date, INTERVAL ekspresi_interval)

DATE_FORMAT(date, simbolformat)
Fungsi ini dapat mengkonversikan tanggal sesuai simbol format yang kita inginkan. x adalah tanggal yang akan dikonversikan.
Berikut ini adalah simbol format yang dapat digunakan:








%M
%m
%b
%W
%D
%Y
%y
%j
%a
%d
%r
%T
%H
%h
%S

Nama bulan secara penuh
Nomor bulan
Nama bulan disingkat
Nama hari secara lengkap
Nomor hari dalam bulan
Tahun dalam format 4 digit
Tahun dengan format 2 digit
Nomor hari dalam 1 tahun
Nama hari disingkat
Nomor hari dalam satu bilan
Jam dalam format 12 jam
Jam dalam format 24 jam
jam dalam format 24 jam :00-23
jam dalam format 12 jam :00-12
Detik


Contoh: select DATE_FORMAT('2010-04-15', '%M %D %Y');
Hasil: April 15th 2010

DATE_SUB(date, INTERVAL ekspresi_interval)
Membuat data tanggal baru dengan mengurangi, sama hasilnya jika kita menggunakan fungsi ADDDATE(date, INTERVAL ekspresi_interval) dengan nilai interval minus. x adalah tanggal dan ekspresi interval bisa dilihat pada fungsi ADDDATE(date, INTERVAL ekspresi_interval).
Contoh: Select DATE_SUB("2010-04-14", INTERVAL 15 day); Hasil: 2010-03-30

DAYNAME(date)
Digunakan untuk menampilkan nama hari dari tanggal yang menjadi argumen pada fungsi.
Contoh: Select DAYNAME('2010-04-14'); Hasil: Wednesday

DAYOFMONTH(date)
Digunakan untuk menampilkan nomor hari dari tanggal yang menjadi argumen pada fungsi.
Contoh: Select DAYOFMONTH('2010-04-14'); Hasil: 14

DAYOFWEEK(date)
Digunakan untuk menampilkan nomor hari dalam satu minggu dari tanggal yang menjadi argumen pada fungsi.
Contoh: Select DAYOFWEEK('2010-04-14'); Hasil: 4

DAYOFYEAR(date)
Digunakan untuk menampilkan nomor hari dalam satu tahun dari tanggal yang menjadi argumen pada fungsi.
Contoh: Select DAYOFYEAR('2010-04-14');
Hasil: 104

EXTRACT(value FROM date)
Digunakan untuk mendapatkan informasi tentang nilai dari tanggal berdasarkan tipe interval. Value diisi dengan tipe interval.
Contoh: Select EXTRACT(DAY FROM '2010-04-14'); Hasil: 14

FROM_DAYS(days)
Digunakan untuk mendapatkan tanggal dari suatu bilangan. Merupakan kebalikan dari fungsi TO_DAYS(date).
Contoh: Select FROM_DAYS(78936); Hasil: 0216-02-14

FROM_UNIXTIME(unixtime[, simbolformat])
Digunakan untuk mendapatkan tanggal berdasarkan waktu UNIX. Simbol format digunakan untuk menampilkan format tampilan tanggal yang diinginkan.
Contoh: Select FROM_UNIXTIME(78936, '%M %D %Y'); Hasil: January 2nd 1970

HOUR(time)
Menghasilkan bagian jam dari waktu yang menjadi argumen.
Contoh: Select HOUR('13:05:20'); Hasil: 13

MINUTE(time)
Menghasilkan bagian menit dari waktu yang menjadi argumen.
Contoh: Select MINUTE('13:05:20'); Hasil: 5

MONTH(date)
Menghasilkan bagian bulan dari tanggal yang menjadi argumen.
Contoh: Select MONTH('2010-04-14'); Hasil: 4

MONTHNAME(date)
Menghasilkan bagian nama bulan dari tanggal yang menjadi argumen.
Contoh: Select MONTHNAME('2010-04-14'); Hasil: April

NOW()
Menghasilkan waktu sekarang, disajikan dalam format lengkap.
Contoh: Select NOW(); Hasil: 2010-04-26 13:10:16

PERIOD_ADD(x, y)
Menghasilkan penjumlahan bulan x dengan bulan y. x ditulis dalam format yyyymm.
Contoh: Select PERIOD_ADD(201004, 2); Hasil: 201006

PERIOD_DIFF(x, y)
Menghasilkan selisih bulan x dengan bulan y. x dan y ditulis dalam format yyyymm atau ccyymm.
Contoh: Select PERIOD_DIFF(201004, 200909); Hasil: 7

QUARTER(date)
Menghasilkan nilai kuartal dalam satu tahun dari tanggal yang menjadi argumen.
Contoh: Select QUARTER('2010-04-14'); Hasil: 2

SECOND(time)
Menghasilkan bagian detik dari waktu yang menjadi argumen.
Contoh: Select SECOND('13:05:20'); Hasil: 20

SEC_TO_TIME(second)
Menghasilkan waktu dengan format "hh:mm:ss" dari suatu angka yang merupakan jumlah detik. Fungsi ini kebalikan dari fungsi TIME_TO_SEC(time).
Contoh: Select SEC_TO_TIME(123456); Hasil: 34:17:36

SUBDATE()
Sama seperti DATE_SUB() untuk melakukan manipulasi tanggal

SYSDATE()
Menghasilkan waktu saat ini. Sama dengan fungsi CURTIME(), NOW(), CURRENT_TIMESTAMP().

TIME_FORMAT(time, simbolformat)
Menghasilkan tampilan waktu sesuai dengan format yang diinginkan. simbolformat lihat pada pembahasan pada fungsi DATE_FORMAT(date, simbolformat).
Contoh: Select TIME_FORMAT('2010-04-15 13:24:15', '%i:%s'); Hasil: 24:15

TIME_TO_SEC(time)
Menghasilkan jumlah detik dari waktu yang menjadi argumen.
Contoh: Select TIME_TO_SEC('13:24:15'); Hasil: 48255

TO_DAYS(date)
Menghasilkan jumlah hari dari tanggal yang menjadi argumen.
Contoh: Select TO_DAYS('2010-04-15'); Hasil: 734242

UNIX_TIMESTAMP([date])
Menghasilkan tanggal dalam format timestamp UNIX.
Contoh: Select UNIX_TIMESTAMP('2010-04-15'); Hasil: 1271264400

WEEK(date [, start])
Mendapatkan informasi nomor minggu dalam satu tahun. Start adalah bersifat opsional, jika diisi 1 maka awal minggu dimulai dari hari Senin.
Contoh: Select WEEK('2010-04-15'); Hasil: 15

WEEKDAY(date)
Mendapatkan informasi nomor hari dalam satu minggu dari tanggal yang menjadi argumen.
Contoh: Select WEEKDAY('2010-04-15'); Hasil: 3

WEEKDAY(date)
Mendapatkan informasi nomor hari dalam satu minggu dari tanggal yang menjadi argumen.
Berikut ini nomor dan nama hari dimaksud:








0
1
2
3
4
5
6

Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday


Contoh: Select WEEKDAY('2010-04-15');
Hasil: 3

YEAR(date)
Mendapatkan informasi tahun dari tanggal yang menjadi argumen.
Contoh: Select YEAR('2010-04-15');
Hasil: 2010




Fungsi Logika
Fungsi logika merupkan fungsi untuk melakukan evaluasi suatu ekspresi. Dengan ekspresi ini akan menghasilkan suatu nilai yang akan ditampilkan pada hasil query.

IF(ekspresi1, ekspresi2, ekspresi3)
Fungsi IF() akan mengevaluasi ekspresi1, jika benar maka ekspresi2 menjadi hasil, jika salah maka ekspresi3 menjadi hasil.
Contoh: Select IF(1, 'Benar', 'Salah');

IFNULL(ekspresi1, ekspresi2)
Fungsi IFNULL() akan mengevaluasi ekspresi1, jika ekspresi 1 bersisi NULL maka ekspresi2 menjadi hasil, jika bukan NULL maka ekspresi1 itu sendiri menjadi hasil.
Contoh: Select IFNULL(Nama, 'Andra') from karyawan where perusahaan='711cr';

ISNULL(ekspresi)
Fungsi ISNULL() akan menghasilkan nilai 1 jika ekspresi benar bernilai NULL. Nilai 0 jika ekspresi salah.
Contoh: Select ISNULL(Nama) from karyawan where perusahaan='711cr';

No comments: