Bagaimana Cara Menggunakan Select Distinct Di MySQL

Apa Itu Distinct?

DISTINCT adalah salah satu operator di database MySQL bahkan hampir di semua database yang digunakan untuk mencegah adanya duplikasi data atau record. Misalkan ada 10 orang yang bernama 'AHMAD', maka dengan menggunakan operator Distinct, Anda bisa mengeliminasi data 'AHMAD' menjadi satu nama saja.

Operator Distinct digunakan setelah keyword SELECT pada Select statement.


Sintak Dasar

Di bawah ini adalah sintak dasar Select Distinct di MySQL:

SELECT DISTINCT nama_kolom
FROM nama_tabel
WHERE kondisi

Contoh Latihan

Sebagai latihan penggunaan Select Distinct, Anda dapat mengikuti step-step dibawah ini:
  1. Buatlah tabel di database MySQL dengan nama TBL_KARYAWAN dan isi data tabel karyawan dengan data-data berikut:

    TBL_KARYAWAN
    NAMA_DEPAN NAMA_BELAKANG
    Agung Heriyadi
    Agung Supriyatna
    Ahmad Sahil
    Ahmad Sofyan
    Ana Fauziyah
    Asep Supriyatna
    Laura Krasiva
    Naura Krasiva
    Ngatimin
    Nurul Anwariyah
    Nurul Hikmah
    Sutrisno
    Zainuddin

    Script Buat Table

    mysql> CREATE TABLE TBL_KARYAWAN(
        ->    nama_depan VARCHAR(50),
        ->    nama_belakang VARCHAR(50)
        -> );
    Query OK, 0 rows affected (0.24 sec)
    
    
    
    Baca juga: Membuat Tabel di MySQL.

    Script Insert Data

    mysql> INSERT INTO TBL_KARYAWAN VALUES('Agung','Heriyadi');
    Query OK, 1 row affected (0.05 sec)
    
    mysql> INSERT INTO TBL_KARYAWAN VALUES('Agung','Supriyatna');
    Query OK, 1 row affected (0.04 sec)
    
    mysql> INSERT INTO TBL_KARYAWAN VALUES('Ahmad','Sahil');
    Query OK, 1 row affected (0.09 sec)
    
    mysql> INSERT INTO TBL_KARYAWAN VALUES('Ahmad','Sofyan');
    Query OK, 1 row affected (0.05 sec)
    
    mysql> INSERT INTO TBL_KARYAWAN VALUES('Ana','Fauziyah');
    Query OK, 1 row affected (0.07 sec)
    
    mysql> INSERT INTO TBL_KARYAWAN VALUES('Asep','Supriyatna');
    Query OK, 1 row affected (0.06 sec)
    
    mysql> INSERT INTO TBL_KARYAWAN VALUES('Laura','Krasiva');
    Query OK, 1 row affected (0.07 sec)
    
    mysql> INSERT INTO TBL_KARYAWAN VALUES('Naura','Krasiva');
    Query OK, 1 row affected (0.05 sec)
    
    mysql> INSERT INTO TBL_KARYAWAN VALUES('Ngatimin',null);
    Query OK, 1 row affected (0.05 sec)
    
    mysql> INSERT INTO TBL_KARYAWAN VALUES('Nurul','Anwariyah');
    Query OK, 1 row affected (0.06 sec)
    
    mysql> INSERT INTO TBL_KARYAWAN VALUES('Nurul','Hikmah');
    Query OK, 1 row affected (0.06 sec)
    
    mysql> INSERT INTO TBL_KARYAWAN VALUES('Sutrisno',null);
    Query OK, 1 row affected (0.04 sec)
    
    mysql> INSERT INTO TBL_KARYAWAN VALUES('Zainuddin',null);
    Query OK, 1 row affected (0.05 sec)
    
    

    Baca juga: Insert Statemen di MySQL.

  2. Tampilkan semua data Karyawan

    mysql> SELECT * FROM tbl_karyawan;
    +------------+---------------+
    | nama_depan | nama_belakang |
    +------------+---------------+
    | Agung      | Heriyadi      |
    | Agung      | Supriyatna    |
    | Ahmad      | Sahil         |
    | Ahmad      | Sofyan        |
    | Ana        | Fauziyah      |
    | Asep       | Supriyatna    |
    | Laura      | Krasiva       |
    | Naura      | Krasiva       |
    | Ngatimin   | NULL          |
    | Nurul      | Anwariyah     |
    | Nurul      | Hikmah        |
    | Sutrisno   | NULL          |
    | Zainuddin  | NULL          |
    +------------+---------------+
    13 rows in set (0.04 sec)
    
    

    Query diatas menghasilkan 10 record karena ada 3 record yang dieliminasi yaitu nama Agung, Ahmad, dan Nurul yang awalnya double hanya ditampilkan satu record saja.

  3. Tampilkan Nama Depan Karyawan menggunakan Select Distinct. Dan lihat hasilnya.

    mysql> SELECT DISTINCT nama_depan FROM tbl_karyawan;
    +------------+
    | nama_depan |
    +------------+
    | Agung      |
    | Ahmad      |
    | Ana        |
    | Asep       |
    | Laura      |
    | Naura      |
    | Ngatimin   |
    | Nurul      |
    | Sutrisno   |
    | Zainuddin  |
    +------------+
    10 rows in set (0.03 sec)
    
    
  4. Tampilkan Nama Belakang menggunakan Select Distinct. Dan lihat hasilnya

    mysql> SELECT DISTINCT nama_belakang FROM tbl_karyawan;
    +---------------+
    | nama_belakang |
    +---------------+
    | Heriyadi      |
    | Supriyatna    |
    | Sahil         |
    | Sofyan        |
    | Fauziyah      |
    | Krasiva       |
    | NULL          |
    | Anwariyah     |
    | Hikmah        |
    +---------------+
    9 rows in set (0.00 sec)
    
    

Sekian tutorial singkat Bagaimana Cara Menggunakan SELECT LIMIT Statement Di MySQL. Semoga bermanfaat & Selamat Belajar MySQL.


Jika Anda menyukai tutorial ini, silahkan Anda share dan Anda bagikan dengan teman-teman Anda, dan jika Anda ingin berdiskusi tentang judul tutorial diatas, atau pun mau bertanya tentang tutorial ini silahkan Anda untuk menggunakan fasilitas komentar untuk berdiskusi dan bertanya di blog ini.

Salam,


~Nursalim~
Naura-Lab.blogspot.com

Bagaimana Cara Menggunakan SELECT LIMIT Statement Di MySQL

Pada tutorial kali ini, Kita akan belajar Bagaimana Cara Menggunakan perintah SELECT LIMIT Di Database MySQL.


Apa Itu SELECT LIMIT?

SELECT LIMIT merupakan SELECT statement dengan menambahkan clausa LIMIT untuk membatasi jumlah data/record. SELECT LIMIT mirip dengan ROWNUM di Oracle database.

Baca Juga : Menggunakan Select Statement Di MySQL.

Sintak Dasar

Di bawah ini adalah sintak dasar untuk membuat perintah SELECT LIMIT:

SELECT kolom_1, kolom_2
FROM nama_table
WHERE kondisi
ORDER BY nama_kolom [ASC|DESC]
LIMIT jumlah_record

Keterangan sintak:
  • jumlah_record adalah berapa banyak record atau data yang akan ditampilkan. Apabila anda ingin menampilkan 10 record, maka jumlah_record diisi dengan 10.

Langkah-Langkah Menggunakan SELECT LIMIT

Di bawah ini adalah langkah-langkah dalam menggunakan SELECT LIMIT statement sebagai bahan latihan.
  1. Buatlah sebuah table KARYAWAN dan isi datanya seperti berikut ini.

    Tabel KARYAWAN

    NIK Nama Kode_Department Gender Gaji_Pokok Tunjangan
    0001 Nursalim IT L 3000000 250000
    0002 Naura Krasiva Elsalna ACCOUNTING P 1750000 100000
    0003 Nani Indriyani IT P 2750000 200000
    0004 Ahmad Fathoni HRD L 1000000 100000
    0005 Bayu Dirgantara IT L 3000000 250000

    Script Buat Table

    mysql> CREATE TABLE karyawan (
        -> nik VARCHAR(5) NOT NULL PRIMARY KEY,
        -> nama VARCHAR(50) NOT NULL,
        -> gender CHAR(1) NOT NULL,
        -> department VARCHAR(30) NOT NULL,
        -> gaji_pokok BIGINT(10) NOT NULL,
        -> tunjangan BIGINT(10) NOT NULL
        -> );
    Query OK, 0 rows affected (0.15 sec)
    
    

    Baca Juga: Membuat Table di MySQL.

    Script Insert Data

    mysql> INSERT INTO karyawan VALUES('0001','Nursalim','L','IT',3000000,250000);
    Query OK, 1 row affected (0.11 sec)
    
    mysql> INSERT INTO karyawan VALUES('0002','Naura Krasiva Elsalna','P','ACCOUNTING',1750000,100000);
    Query OK, 1 row affected (0.13 sec)
    
    mysql> INSERT INTO karyawan VALUES('0003','Nani Indriyani','P','IT',2750000,200000);
    Query OK, 1 row affected (0.06 sec)
    
    mysql> INSERT INTO karyawan VALUES('0004','Ahmad Fathoni','L','HRD',1000000,100000);
    Query OK, 1 row affected (0.06 sec)
    
    mysql> INSERT INTO karyawan VALUES('0005','Bayu Dirgantara','L','IT',3000000,250000);
    Query OK, 1 row affected (0.11 sec)
    
    

    Baca juga: Menggunakan Insert Statement di MySQL.

  2. Tampilkan data dari tabel KARYAWAN

    mysql> SELECT * FROM karyawan;
    +------+-----------------------+--------+------------+------------+-----------+
    | nik  | nama                  | gender | department | gaji_pokok | tunjangan |
    +------+-----------------------+--------+------------+------------+-----------+
    | 0001 | Nursalim              | L      | IT         |    3000000 |    250000 |
    | 0002 | Naura Krasiva Elsalna | P      | ACCOUNTING |    1750000 |    100000 |
    | 0003 | Nani Indriyani        | P      | IT         |    2750000 |    200000 |
    | 0004 | Ahmad Fathoni         | L      | HRD        |    1000000 |    100000 |
    | 0005 | Bayu Dirgantara       | L      | IT         |    3000000 |    250000 |
    +------+-----------------------+--------+------------+------------+-----------+
    5 rows in set (0.00 sec)
    
    
  3. Tampilkan data dari table KARYAWAN dengan jumlah record empat (4) dan urutkan secara ascending berdasarkan Nama karyawan.

    mysql> SELECT * FROM karyawan
        -> ORDER BY nama
        -> LIMIT 4;
    +------+-----------------------+--------+------------+------------+-----------+
    | nik  | nama                  | gender | department | gaji_pokok | tunjangan |
    +------+-----------------------+--------+------------+------------+-----------+
    | 0004 | Ahmad Fathoni         | L      | HRD        |    1000000 |    100000 |
    | 0005 | Bayu Dirgantara       | L      | IT         |    3000000 |    250000 |
    | 0003 | Nani Indriyani        | P      | IT         |    2750000 |    200000 |
    | 0002 | Naura Krasiva Elsalna | P      | ACCOUNTING |    1750000 |    100000 |
    +------+-----------------------+--------+------------+------------+-----------+
    4 rows in set (0.09 sec)
    
    
  4. Tampilkan data dari tabel KARYAWAN dengan jumlah record empat (4) yang mempunyai gaji bersih lebih dari 1 juta, dan urutkan secara descending berdasarkan gaji bersih. Rumus Gaji Bersih = Gaji Pokok + Tunjangan.

    mysql> SELECT nik, nama, gender, department, gaji_pokok+tunjangan 'gaji_bersih'
        -> FROM karyawan
        -> WHERE gaji_pokok+tunjangan > 1000000
        -> ORDER BY gaji_pokok+tunjangan DESC
        -> LIMIT 4;
    +------+-----------------------+--------+------------+-------------+
    | nik  | nama                  | gender | department | gaji_bersih |
    +------+-----------------------+--------+------------+-------------+
    | 0001 | Nursalim              | L      | IT         |     3250000 |
    | 0005 | Bayu Dirgantara       | L      | IT         |     3250000 |
    | 0003 | Nani Indriyani        | P      | IT         |     2950000 |
    | 0002 | Naura Krasiva Elsalna | P      | ACCOUNTING |     1850000 |
    +------+-----------------------+--------+------------+-------------+
    4 rows in set (0.00 sec)
    
    

    Baca Juga: Menggunakan Alias di MySQL.

Sekian tutorial singkat Bagaimana Cara Menggunakan SELECT LIMIT Statement Di MySQL. Semoga bermanfaat & Selamat Belajar MySQL.


Jika Anda menyukai tutorial ini, silahkan Anda share dan Anda bagikan dengan teman-teman Anda, dan jika Anda ingin berdiskusi tentang judul tutorial diatas, atau pun mau bertanya tentang tutorial ini silahkan Anda untuk menggunakan fasilitas komentar untuk berdiskusi dan bertanya di blog ini.

Salam,


~Nursalim~
Naura-Lab.blogspot.com

Bagaimana Cara Membuat, Mengubah, Dan Menghapus View Di MySQL

Apa Itu View?

VIEW adalah tabel virtual (virtual table) hasil dari sebuah statement Select Query. Mengapa View disebut virtual tabel? Jawabannya karena View mirip sebuah tabel yaitu berisi kolom atau field dan record tetapi view bersifat read only yaitu Anda tidak bisa melakukan proses insert data ke view. Disamping itu, kita juga bisa melakukan query dengan menggunakan View.



Catatan:

Data yang ada di View akan selalu up to date seiring dengan data yang ada di tabel.

Membuat View

Untuk membuat sebuah view di MySQL, Anda dapat menggunakan perintah CREATE VIEW. Di bawah ini adalah sintak dasar untuk membuat view di MySQL:

CREATE VIEW nama_view AS
SELECT kolom_1, kolom_2, kolom_n
FROM nama_table
WHERE kondisi;

Di bawah ini adalah langkah-langkah dalam membuat view sebagai bahan latihan.
  1. Buatlah sebuah table KARYAWAN dan isi datanya seperti berikut ini.

    Tabel KARYAWAN

    NIK Nama Kode_Department Gender Gaji_Pokok Tunjangan
    0001 Nursalim IT L 3000000 250000
    0002 Naura Krasiva Elsalna ACCOUNTING P 1750000 100000
    0003 Nani Indriyani IT P 2750000 200000
    0004 Ahmad Fathoni HRD L 1000000 100000
    0005 Bayu Dirgantara IT L 3000000 250000

    Script Buat Table

    mysql> CREATE TABLE karyawan (
        -> nik VARCHAR(5) NOT NULL PRIMARY KEY,
        -> nama VARCHAR(50) NOT NULL,
        -> gender CHAR(1) NOT NULL,
        -> department VARCHAR(30) NOT NULL,
        -> gaji_pokok BIGINT(10) NOT NULL,
        -> tunjangan BIGINT(10) NOT NULL
        -> );
    Query OK, 0 rows affected (0.15 sec)
    
    
    Script Insert Data

    mysql> INSERT INTO karyawan VALUES('0001','Nursalim','L','IT',3000000,250000);
    Query OK, 1 row affected (0.11 sec)
    
    mysql> INSERT INTO karyawan VALUES('0002','Naura Krasiva Elsalna','P','ACCOUNTING',1750000,100000);
    Query OK, 1 row affected (0.13 sec)
    
    mysql> INSERT INTO karyawan VALUES('0003','Nani Indriyani','P','IT',2750000,200000);
    Query OK, 1 row affected (0.06 sec)
    
    mysql> INSERT INTO karyawan VALUES('0004','Ahmad Fathoni','L','HRD',1000000,100000);
    Query OK, 1 row affected (0.06 sec)
    
    mysql> INSERT INTO karyawan VALUES('0005','Bayu Dirgantara','L','IT',3000000,250000);
    Query OK, 1 row affected (0.11 sec)
    
    
  2. Tampilkan data dari tabel KARYAWAN

    mysql> SELECT * FROM karyawan;
    +------+-----------------------+--------+------------+------------+-----------+
    | nik  | nama                  | gender | department | gaji_pokok | tunjangan |
    +------+-----------------------+--------+------------+------------+-----------+
    | 0001 | Nursalim              | L      | IT         |    3000000 |    250000 |
    | 0002 | Naura Krasiva Elsalna | P      | ACCOUNTING |    1750000 |    100000 |
    | 0003 | Nani Indriyani        | P      | IT         |    2750000 |    200000 |
    | 0004 | Ahmad Fathoni         | L      | HRD        |    1000000 |    100000 |
    | 0005 | Bayu Dirgantara       | L      | IT         |    3000000 |    250000 |
    +------+-----------------------+--------+------------+------------+-----------+
    5 rows in set (0.00 sec)
    
    
  3. Buatlah sebuah view dengan nama V_KARYAWAN_IT yang mempunyai kolom NIK, Nama, Jenis Kelamin, Gaji Bersih dimana Gaji Bersih adalah Gaji Pokok + Tunjangan dari departement IT.

    mysql> CREATE VIEW V_KARYAWAN_IT AS
        -> SELECT nik, nama, gender "Jenis Kelamin", gaji_pokok+tunjangan "Gaji Bersih"
        -> FROM karyawan
        -> WHERE department = 'IT';
    Query OK, 0 rows affected (0.04 sec)
    
    
  4. Tampilkan data dari view V_KARYAWAN_IT dengan menggunakan MySQL command line

    mysql> SELECT * FROM V_KARYAWAN_IT;
    +------+-----------------+---------------+-------------+
    | nik  | nama            | Jenis Kelamin | Gaji Bersih |
    +------+-----------------+---------------+-------------+
    | 0001 | Nursalim        | L             |     3250000 |
    | 0003 | Nani Indriyani  | P             |     2950000 |
    | 0005 | Bayu Dirgantara | L             |     3250000 |
    +------+-----------------+---------------+-------------+
    3 rows in set (0.00 sec)
    
    

Menampilkan Daftar View

Anda dapat menampilkan daftar atau list view yang ada di database MySQL dengan menggunakan perintah di bawah ini:

mysql> SHOW FULL TABLES IN hr WHERE TABLE_TYPE LIKE 'VIEW';
+---------------+------------+
| Tables_in_hr  | Table_type |
+---------------+------------+
| v_karyawan_it | VIEW       |
+---------------+------------+
1 row in set (0.00 sec)

Meng-Update View

Anda dapat meng-update view sesuai dengan kebutuhan Anda seperti menambahkan kolom pada view ataupun menambahkan filter pada Where Clause di view tersebut. Untuk mengupdate view, Anda bisa menggunakan perintah CREATE OR REPLACE VIEW.

Di bawah ini adalah sintak dasar untuk mengupdate view yang sudah ada di MySQL:

CREATE OR REPLACE VIEW nama_view AS
SELECT kolom_1, kolom_2, kolom_n
FROM nama_tabel
WHERE kondisi;

Sebagai Latihan, coba Anda modifikasi view V_KARYAWAN_IT diatas dengan menambahkan filter HANYA karyawan yang berjenis kelamin laki-laki saja.

mysql> CREATE OR REPLACE VIEW V_KARYAWAN_IT AS
    -> SELECT nik, nama, gender "Jenis Kelamin", gaji_pokok+tunjangan "Gaji Bersih"
    -> FROM karyawan
    -> WHERE department = 'IT'
    -> AND gender = 'L';
Query OK, 0 rows affected (0.04 sec)


Menghapus View (Drop View)

Di bawah ini adalah sintak dasar untuk menghapus view di MySQL

DROP VIEW nama_view;

Contoh:

DROP VIEW V_KARYAWAN_IT;


Sekian tutorial singkat Bagaimana Cara Membuat, Mengubah, Dan Menghapus View Di MySQL. Semoga bermanfaat & Selamat Belajar MySQL.


Jika Anda menyukai tutorial ini, silahkan Anda share dan Anda bagikan dengan teman-teman Anda, dan jika Anda ingin berdiskusi tentang judul tutorial diatas, atau pun mau bertanya tentang tutorial ini silahkan Anda untuk menggunakan fasilitas komentar untuk berdiskusi dan bertanya di blog ini.

Salam,


~Nursalim~
Naura-Lab.blogspot.com

Mengenal Dan Menggunakan Date Time Built-in Function Di MySQL

ADDDATE(date, interval) DAN DATE_ADD(date, interval)

Fungsi ADDDATE() dan DATE_ADD() digunakan untuk menambahkan datetime pada tanggal yang telah ditentukan. Misalkan ingin menampilkan 10 hari kedepan dari tanggal 1 Februari 2015 jatuh pada tanggal berapa?



Catatan:

Interval yang biasa Anda gunakan adalah SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, YEAR, dan sebagainya.

Contoh #1:
Menampilkan 10 hari kedepan dari tanggal 1 Februari 2015

mysql> SELECT ADDDATE('2015-02-01',INTERVAL 10 DAY);
+---------------------------------------+
| ADDDATE('2015-02-01',INTERVAL 10 DAY) |
+---------------------------------------+
| 2015-02-11                            |
+---------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT DATE_ADD('2015-02-01',INTERVAL 10 DAY);
+----------------------------------------+
| DATE_ADD('2015-02-01',INTERVAL 10 DAY) |
+----------------------------------------+
| 2015-02-11                             |
+----------------------------------------+
1 row in set (0.00 sec)


Contoh #2
Menampilkan 10 bulan kedepan dari tanggal 1 Februari 2015

mysql> SELECT ADDDATE('2015-02-01',INTERVAL 10 MONTH);
+-----------------------------------------+
| ADDDATE('2015-02-01',INTERVAL 10 MONTH) |
+-----------------------------------------+
| 2015-12-01                              |
+-----------------------------------------+
1 row in set (0.00 sec)


CURDATE() Dan CURRENT_DATE()

Fungsi CURDATE() dan CURRENT_DATE() digunakan untuk menampilkan tanggal hari ini dalam format "YYYY-MM-DD" atau "YYYYMMDD".

Contoh #1 - CURDATE()

mysql> SELECT CURDATE();
+------------+
| CURDATE()  |
+------------+
| 2015-01-30 |
+------------+
1 row in set (0.00 sec)


Contoh #2 - CURRENT_DATE()

mysql> SELECT CURRENT_DATE();
+----------------+
| CURRENT_DATE() |
+----------------+
| 2015-01-30     |
+----------------+
1 row in set (0.00 sec)


Contoh #3 - CURDATE()+1

mysql> SELECT CURDATE()+1;
+-------------+
| CURDATE()+1 |
+-------------+
|    20150131 |
+-------------+
1 row in set (0.00 sec)


CURRENT_TIME()

Fungsi CURRENT_TIME() digunakan untuk menampilkan waktu sekarang dengan format "HH:SS:MM".

Contoh:

mysql> SELECT CURRENT_TIME();
+----------------+
| CURRENT_TIME() |
+----------------+
| 23:25:50       |
+----------------+
1 row in set (0.00 sec)


CURRENT_TIMESTAMP()

Fungsi CURRENT_TIMESTAMP() digunakan untuk menampilkan tanggal dan waktu sekarang dengan format "YYYY-MM-DD HH-MM-SS".

Contoh:

mysql> SELECT CURRENT_TIMESTAMP();
+---------------------+
| CURRENT_TIMESTAMP() |
+---------------------+
| 2015-01-30 23:29:19 |
+---------------------+
1 row in set (0.00 sec)


DATEDIFF(date1, date2)

Fungsi DATEDIFF() digunakan untuk menampilkan selisih jumlah hari diantara dua tanggal (date). Argument atau parameter yang dapat digunakan yaitu DATE, DATETIME, dan TIMESTAMP

Contoh #1:

mysql> SELECT DATEDIFF('2015-01-30','2015-01-30');
+-------------------------------------+
| DATEDIFF('2015-01-30','2015-01-30') |
+-------------------------------------+
|                                   0 |
+-------------------------------------+
1 row in set (0.00 sec)

Contoh #2:

mysql> SELECT DATEDIFF('2015-01-30','2015-01-20');
+-------------------------------------+
| DATEDIFF('2015-01-30','2015-01-20') |
+-------------------------------------+
|                                  10 |
+-------------------------------------+
1 row in set (0.00 sec)

Contoh #3:

mysql> SELECT DATEDIFF('2015-01-20','2015-01-30');
+-------------------------------------+
| DATEDIFF('2015-01-20','2015-01-30') |
+-------------------------------------+
|                                 -10 |
+-------------------------------------+
1 row in set (0.00 sec)


NOW()

Fungsi NOW() digunakan untuk menampilkan tanggal dan waktu saat ini.

Contoh:

mysql> SELECT NOW() "Tanggal Sekarang";
+---------------------+
| Tanggal Sekarang    |
+---------------------+
| 2015-01-30 22:56:33 |
+---------------------+
1 row in set (0.00 sec)


Sekian tutorial singkat Mengenal Dan Menggunakan Numeric Built-in Functions Di MySQL. Semoga bermanfaat & Selamat Belajar MySQL.


Jika Anda menyukai tutorial ini, silahkan Anda share dan Anda bagikan dengan teman-teman Anda, dan jika Anda ingin berdiskusi tentang judul tutorial diatas, atau pun mau bertanya tentang tutorial ini silahkan Anda untuk menggunakan fasilitas komentar untuk berdiskusi dan bertanya di blog ini.

Salam,


~Nursalim~
Naura-Lab.blogspot.com

Mengenal Dan Menggunakan Numeric Built-in Functions Di MySQL

Pada tutorial sebelumnya Anda telah belajar tentang Penggunaan Fungsi String di MySQL. Melanjutkan pokok bahasan built-in function di MySQL, pada tutorial kali ini akan dibahas tentang Numeric Function yang ada di database MySQL.

Apa Itu Numeric Function?

Numeric function adalah fungsi yang digunakan dalam operasi matematika. Database MySQL mempunyai segudang built-in numeric function yang bisa Anda gunakan.


Macam-Macam Numeric Function

Di bawah ini adalah tabel Numeric function di database MySQL:

Nama Fungsi Deskripsi
ABS(x) Menampilkan nilai absolute dari suatu bilangan.
ACOS(x) Menampilkan nilai Arc Cosinus dari suatu bilangan (x). Apabila bilangan (x) tidak mempunyai nilai antara -1 dan 1, maka akan menghasilkan nilai NULL.
ASIN(x) Menampilkan nilai Arc Sinus dari suatu bilangan (x). Apabila bilangan (x) tidak mempunyai nilai antara -1 dan 1, maka akan menghasilkan nilai NULL.
ATAN(x) Menampilkan nilai Arc Tangen dari suatu bilangan (x).
COS(x) Menampilkan nilai Cosinus dari suatu bilangan (x).
GREATEST(x1, x2, ...) Menampilkan nilai terbesar dari beberapa bilangan di parameter.
LEAST(x1, x2, ...) Menampilkan nilai terkecil dari beberapa bilangan di parameter.
PI() Menampilkan nilai PI.
POW(x,y) atau POWER(x,y) Menghasilkan nilai bilangan x pangkat y
SIN(x) Menghasilkan nilai Sinus dari suatu bilangan (x)
SQRT(x) Menghasilkan nilai akar dari suatu bilangan (x)
TAX(x) Menghasilkan nilai Tangen dari suatu bilangan (x)

ABS(x)

Fungsi ABS (absolute) digunakan untuk menampilkan nilai absolute atau mutlak dari suatu bilangan. Nilai absolute adalah nilai yang selalu bernilai positif.

Contoh #1:

mysql> SELECT ABS(5);
+--------+
| ABS(5) |
+--------+
|      5 |
+--------+
1 row in set (0.00 sec)

Contoh #2:

mysql> SELECT ABS(-5);
+---------+
| ABS(-5) |
+---------+
|       5 |
+---------+
1 row in set (0.00 sec)

ACOS(x)

Fungsi ACOS(x) digunakan menampilkan nilai Arc Cosinus dari suatu bilangan. Apabila bilangan (x) tidak mempunyai rentang nilai antara -1 dan 1, maka akan menghasilkan nilai NULL.

Contoh #1:

mysql> SELECT ACOS(0.5);
+--------------------+
| ACOS(0.5)          |
+--------------------+
| 1.0471975511965979 |
+--------------------+
1 row in set (0.00 sec)

Contoh #2:

mysql> SELECT ACOS(2);
+---------+
| ACOS(2) |
+---------+
|    NULL |
+---------+
1 row in set (0.00 sec)


ASIN(x)

Menampilkan nilai Arc Sinus dari suatu bilangan (x). Apabila bilangan (x) tidak mempunyai rentang nilai antara -1 dan 1, maka akan menghasilkan nilai NULL. 

Contoh #1:

mysql> SELECT ASIN(0.5);
+--------------------+
| ASIN(0.5)          |
+--------------------+
| 0.5235987755982989 |
+--------------------+
1 row in set (0.00 sec)

Contoh #2:

mysql> SELECT ASIN(2);
+---------+
| ASIN(2) |
+---------+
|    NULL |
+---------+
1 row in set (0.00 sec)


ATAN(x)

Menampilkan nilai Arc Tangen dari suatu bilangan (x). 

Contoh:

mysql> SELECT ATAN(0.5);
+--------------------+
| ATAN(0.5)          |
+--------------------+
| 0.4636476090008061 |
+--------------------+
1 row in set (0.00 sec)

COS(x)

Fungsi COS(x) digunakan nilai Cosinus dari suatu bilangan(x).

Contoh:

mysql> SELECT COS(45);
+--------------------+
| COS(45)            |
+--------------------+
| 0.5253219888177297 |
+--------------------+
1 row in set (0.00 sec)


GREATEST(x1, x2, ...)

Menampilkan nilai terbesar dari beberapa bilangan di parameter (x1, x2, ...).


Contoh:

mysql> SELECT GREATEST(10,30,100);
+---------------------+
| GREATEST(10,30,100) |
+---------------------+
|                 100 |
+---------------------+
1 row in set (0.00 sec)

LEAST(x1, x2, ...)

Menampilkan nilai terkecil dari beberapa bilangan di parameter (x1, x2, ...).

Contoh:

mysql> SELECT LEAST(10,30,100);
+------------------+
| LEAST(10,30,100) |
+------------------+
|               10 |
+------------------+
1 row in set (0.00 sec)

PI()

Fungsi PI() digunakan untuk menampilkan nilai PI (Ï€). Menurut wikipedia, PI adalah sebuah konstanta dalam matematika yang merupakan perbandingan keliling lingkaran dengan diameternya.

Contoh:

mysql> SELECT PI();
+----------+
| PI()     |
+----------+
| 3.141593 |
+----------+
1 row in set (0.00 sec)

POW(x,y) atau POWER(x,y)

Fungsi POW(x,y) digunakan untuk menampilkan hasil nilai bilangan dari x pangkat y.

Contoh #1 - POW(x,y)

mysql> SELECT POW(2,3);
+----------+
| POW(2,3) |
+----------+
|        8 |
+----------+
1 row in set (0.00 sec)

Contoh #2 - POWER(x,y)

mysql> SELECT POWER(2,3);
+------------+
| POWER(2,3) |
+------------+
|          8 |
+------------+
1 row in set (0.00 sec)

SIN(x)

Fungsi SIN(x) digunakan untuk menghasilkan nilai Sinus dari suatu bilangan (x).

Contoh:

mysql> SELECT SIN(45);
+--------------------+
| SIN(45)            |
+--------------------+
| 0.8509035245341184 |
+--------------------+
1 row in set (0.00 sec)

SQRT(x)

Fungsi SQRT(x) digunakan untuk menghasilkan nilai akar dari suatu bilangan (x)

Contoh:

mysql> SELECT SQRT(25);
+----------+
| SQRT(25) |
+----------+
|        5 |
+----------+
1 row in set (0.00 sec)


TAX(x)

Fungsi TAN(x) digunakan untuk menghasilkan nilai Tangen dari suatu bilangan (x).

mysql> SELECT TAN(45);
+--------------------+
| TAN(45)            |
+--------------------+
| 1.6197751905438615 |
+--------------------+
1 row in set (0.00 sec)


Sekian tutorial singkat Bagaimana Cara Menggunakan Numeric Built-in Functions Di MySQL. Semoga bermanfaat & Selamat Belajar Database MySQL.

Jika Anda menyukai tutorial ini, silahkan Anda share dan Anda bagikan dengan teman-teman Anda, dan jika Anda ingin berdiskusi tentang judul tutorial diatas, atau pun mau bertanya tentang tutorial ini silahkan Anda untuk menggunakan fasilitas komentar untuk berdiskusi dan bertanya di blog ini.

Salam,


~Nursalim~
Naura-Lab.blogspot.com

Mengenal Dan Menggunakan Built-in String Function Di MySQL

Apa itu String Built-in Function?

MySQL mempunyai beberapa Built String Function (Fungsi bawaan dari MySQL) yang digunakan untuk manipulasi karakter atau string di MySQL. Pada tutorial kali ini, kita akan membahas macam-macam String Function dan cara menggunakannya.


Macam-Macam String Functions

Di bawah ini adalah tabel macam-macam String function di MySQL yang sering digunakan:

Nama Fungsi Deskripsi
ASCII(str) atau ORD(str) Menampilkan kode Ascii dari suatu string/karakter.
BIN(n) Digunakan untuk menampilkan nilai binary dari suatu bilangan desimal.
CHAR_LENGTH(str) atau LENGTH(str) Digunakan untuk menampilkan panjang dari suatu string.
CONCAT(str1,str2,..) Digunakan untuk menyambung sebuah string (concate).
CONCAT_WS(separator,str1,str2) Digunakan untuk menyambung sebuah string (concate) dengan menambahkan pemisah (separator).
INSTR(string, substr) Digunakan untuk mencari posisi substring dari suatu string.
LCASE(str) atau LOWER(str) Digunakan untuk merubah string menjadi huruf kecil.
LOCATE(str) Digunakan untuk mengetahui letak sebuah substring.
LPAD(str, len, padstr) Digunakan untuk menambahkan sebuah karakter/string dari posisi kiri string sampai panjang yang telah ditentukan. (Left Padding).
LTRIM(str) Digunakan untuk menghapus spasi kosong dari sebelah kiri string.
REPEAT(str, jumlah) Digunakan untuk mengulang string sebanyak jumlah yang ditentukan.
REPLACE(str, str_asal, string_pengganti) Digunakan untuk mengetahui letak sebuah substring.
REVERSE(str) Digunakan untuk membalik sebuah string.
RPAD(str, len, padstr) Digunakan untuk menambahkan sebuah karakter/string dari posisi kanan string sampai panjang yang telah ditentukan.(Right Padding).
RTRIM(str) Digunakan untuk menghapus spasi kosong dari sebelah kanan string.
STRCMP(str1,str2) Digunakan untuk dua buah string. Jika sama akan bernilai 0, dan jika berbeda akan bernilai -1.
TRIM(str) Digunakan untuk menghapus spasi kosong dari sebelah kiri dan kanan string.
UCASE(str) atau UPPER(str) Digunakan untuk merubah string menjadi huruf besar.

ASCII(str) atau ORD(str)

Fungsi ASCII(str) dan ORD(str) digunakan untuk menampilkan kode ASCII (American Standard Code for Information Interchange) dari suatu string.

Contoh #1 - ASCII(str)

mysql> SELECT ASCII('A');
+------------+
| ASCII('A') |
+------------+
|         65 |
+------------+
1 row in set (0.00 sec)

Contoh #2 - ORD(str)

mysql> SELECT ORD('A');
+----------+
| ORD('A') |
+----------+
|       65 |
+----------+
1 row in set (0.00 sec)


BIN(n)

Fungsi BIN(n) digunakan untuk menampilkan nilai bilangan biner dari suatu bilangan desimal (n).

Contoh :

mysql> SELECT BIN(25);
+---------+
| BIN(25) |
+---------+
| 11001   |
+---------+
1 row in set (0.01 sec)


CHAR_LENGTH(str) atau LENGTH(str)

Fungsi CHAR_LENGTH(x) atau LENGTH(str) digunakan untuk menampilkan panjang dari suatu string.

Contoh #1 - CHAR_LENGTH(str)

mysql> SELECT CHAR_LENGTH('Universitas');
+----------------------------+
| CHAR_LENGTH('Universitas') |
+----------------------------+
|                         11 |
+----------------------------+
1 row in set (0.00 sec)

Contoh #2 - LENGTH(str)

mysql> SELECT LENGTH('Universitas');
+-----------------------+
| LENGTH('Universitas') |
+-----------------------+
|                    11 |
+-----------------------+
1 row in set (0.01 sec)


CONCAT(str1,str2,...)

Fungsi CONCAT(str1,str2,...) Digunakan untuk menggabungkan atau menyambung dua buah string atau lebih (concate).
 

Contoh:

mysql> SELECT CONCAT('Belajar','MySQL');
+---------------------------+
| CONCAT('Belajar','MySQL') |
+---------------------------+
| BelajarMySQL              |
+---------------------------+
1 row in set (0.00 sec)


CONCAT_WS(separator,str1,str2)

Fungsi CONCAT_WS(separator, str1,str2) digunakan untuk menggabungkan atau menyambung dua buah string (concate) dengan menggunakan separator. Fungsi ini mirip dengan fungsi CONCAT().

Contoh:

mysql> SELECT CONCAT_WS(' ','Belajar','MySQL');
+----------------------------------+
| CONCAT_WS(' ','Belajar','MySQL') |
+----------------------------------+
| Belajar MySQL                    |
+----------------------------------+
1 row in set (0.00 sec)


INSTR(str, substr)

Contoh:

mysql> SELECT INSTR('Belajar MySQL','ajar');
+-------------------------------+
| INSTR('Belajar MySQL','ajar') |
+-------------------------------+
|                             4 |
+-------------------------------+
1 row in set (0.00 sec)

LCASE(str) atau LOWER(str)

Contoh #1 - LCASE:

mysql> SELECT LCASE('Makanan');
+------------------+
| LCASE('Makanan') |
+------------------+
| makanan          |
+------------------+
1 row in set (0.00 sec)

Contoh #2 - LOWER:

mysql> SELECT LOWER('Makanan');
+------------------+
| LOWER('Makanan') |
+------------------+
| makanan          |
+------------------+
1 row in set (0.00 sec)

LOCATE(str)

Contoh:

mysql> SELECT LOCATE('ajar','Belajar MySQL');
+--------------------------------+
| LOCATE('ajar','Belajar MySQL') |
+--------------------------------+
|                              4 |
+--------------------------------+
1 row in set (0.01 sec)


LPAD(str, len, padstr)

Contoh:

mysql> SELECT LPAD('Belajar MySQL',20,'*');
+------------------------------+
| LPAD('Belajar MySQL',20,'*') |
+------------------------------+
| *******Belajar MySQL         |
+------------------------------+
1 row in set (0.00 sec)

LTRIM(str)

Contoh:

mysql> SELECT LTRIM('              MySQL');
+------------------------------+
| LTRIM('              MySQL') |
+------------------------------+
| MySQL                        |
+------------------------------+
1 row in set (0.00 sec)

REPEAT(str, jumlah)

Contoh:

mysql> SELECT REPEAT('MySQL',4);
+----------------------+
| REPEAT('MySQL',4)    |
+----------------------+
| MySQLMySQLMySQLMySQL |
+----------------------+
1 row in set (0.00 sec)

REPLACE(str, str_asal, str_pengganti)

Contoh:

mysql> SELECT REPLACE('naura-lab.blogspot.com','.','[dot]');
+-----------------------------------------------+
| REPLACE('naura-lab.blogspot.com','.','[dot]') |
+-----------------------------------------------+
| naura-lab[dot]blogspot[dot]com                |
+-----------------------------------------------+
1 row in set (0.01 sec)


REVERSE(str)

Contoh:

mysql> SELECT REVERSE('Belajar MySQL');
+--------------------------+
| REVERSE('Belajar MySQL') |
+--------------------------+
| LQSyM rajaleB            |
+--------------------------+
1 row in set (0.00 sec)

RPAD(str, len, padstr)

Contoh:

mysql> SELECT RPAD('Belajar MysQL',20,'*');
+------------------------------+
| RPAD('Belajar MysQL',20,'*') |
+------------------------------+
| Belajar MysQL*******         |
+------------------------------+
1 row in set (0.00 sec)

RTRIM(str)

Contoh :

mysql> SELECT RTRIM('MySQL        ');
+------------------------+
| RTRIM('MySQL        ') |
+------------------------+
| MySQL                  |
+------------------------+
1 row in set (0.00 sec)


STRCMP(str1, str2)

Contoh #1:

mysql> SELECT STRCMP('ABC','ABC');
+---------------------+
| STRCMP('ABC','ABC') |
+---------------------+
|                   0 |
+---------------------+
1 row in set (0.00 sec)


Contoh #2:

mysql> SELECT STRCMP('ABC','CBA');
+---------------------+
| STRCMP('ABC','CBA') |
+---------------------+
|                  -1 |
+---------------------+
1 row in set (0.00 sec)

TRIM(str)

Contoh:

mysql> SELECT TRIM('     MySQL     ');
+-------------------------+
| TRIM('     MySQL     ') |
+-------------------------+
| MySQL                   |
+-------------------------+
1 row in set (0.00 sec)

UCASE(str) atau UPPER(str) 

Contoh #1 - UCASE(str)

mysql> SELECT UCASE('Makanan');
+------------------+
| UCASE('Makanan') |
+------------------+
| MAKANAN          |
+------------------+
1 row in set (0.00 sec)

Contoh #2 - UPPER(str)

mysql> SELECT UPPER('Makanan');
+------------------+
| UPPER('Makanan') |
+------------------+
| MAKANAN          |
+------------------+
1 row in set (0.00 sec)


Sekian tutorial singkat Bagaimana Cara Menggunakan Built-in String Functions Di MySQL. Semoga bermanfaat & Selamat Belajar Database MySQL.


Jika Anda menyukai tutorial ini, silahkan Anda share dan Anda bagikan dengan teman-teman Anda, dan jika Anda ingin berdiskusi tentang judul tutorial diatas, atau pun mau bertanya tentang tutorial ini silahkan Anda untuk menggunakan fasilitas komentar untuk berdiskusi dan bertanya di blog ini.

Salam,


~Nursalim~
Naura-Lab.blogspot.com

Bagaimana Cara Membuat Sequence (Auto Increment) Di MySQL

Pada tutorial kali ini, kita akan belajar Bagaimana Cara Membuat Sequence Di MySQL. Untuk membuat sequence, Anda dapat menggunakan atribut AUTO INCREMENT pada kolom/field di tabel yang anda buat.



Baca Juga : Membuat tabel di database MySQL.

Apa Itu Sequence?

Sequence adalah salah satu objek yang ada di dalam database yang digunakan untuk men-generate sebuah bilangan yang unik, dan biasanya berurutan. Misalnya 1, 2, 3, 4, 5, dan seterusnya.

Fungsi Sequence

Sequence di database biasanya mempunyai fungsi sebagai berikut:
  • Secara otomatis men-generate angka atau bilangan yang unik.
  • Dapat digunakan sebagai primary key, karena kolom atau field yang dijadikan sequence, nilainya (datanya) otomatis bertambah (increment) ketika ada proses INSERT statement.
  • Dapat digunakan untuk meningkatkan performance query.

Sintak Dasar

Untuk membuat sequence di MySQL, Anda harus menambahkan atribut AUTO_INCREMENT ketika membuat sebuah tabel. Sintaknya adalah sebagai berikut:

CREATE TABLE nama_tabel
(
   kolom_1 NOT NULL AUTO_INCREMENT,
   kolom_2 [NULL | NOT NULL],
   ...
   kolom_n [NULL | NOT NULL]
);

Penjelasan sintak:
  • AUTO_INCREMENT adalah atribut yang digunakan untuk me-generate sequence
  • NULL atau NOT NULL adalah atribut yang mengidentifikasikan apakah kolom atau field dapat diisi dengan nilai null atau tidak.

Contoh Latihan

Sebagai contoh latihan untuk membuat sequence di MySQL, Cobalah Anda ikuti langkah-langkah di bawah ini:

Langkah #1 Buat Table

Cobalah Anda buat table seperti dibawah ini:

mysql> CREATE TABLE tbl_contact
    -> (
    ->   kd_contact INT(5) NOT NULL AUTO_INCREMENT,
    ->   nama VARCHAR(30) NOT NULL,
    ->   gender CHAR(1) NOT NULL,
    ->   no_handphone VARCHAR(20) NOT NULL,
    ->   CONSTRAINT pk_contact PRIMARY KEY(kd_contact)
    -> );
Query OK, 0 rows affected (0.17 sec)

Baca juga: Membuat Table di MySQL.

Langkah #2 Insert Data

Untuk membuktikan apakah data di kolom kd_contact pada tabel tbl_contact bertambah otomatis ketika memasukkan data. Cobalah Anda masukkan data ke tabel tbl_contact seperti dibawah ini:

INSERT INTO tbl_contact(nama, gender, no_handphone) VALUES ('Nursalim','L','0897367366');
INSERT INTO tbl_contact(nama, gender, no_handphone) VALUES ('Nani Indriyani','P','08156334');
INSERT INTO tbl_contact(nama, gender, no_handphone) VALUES ('Naura Krasiva','P','0819783748');
INSERT INTO tbl_contact(nama, gender, no_handphone) VALUES ('Ahmad Fathoni','L','085289489');

Pada Insert statement diatas, Anda tidak perlu menambahkan kolom kd_contact, karena secara otomatis nilainya bertambah ketika ada proses Insert data.

Baca juga : Insert data di database MySQL.

Langkah #3 Tampilkan Data

Coba Anda query ke tabel tbl_contact untuk menampilkan data contact:

mysql> SELECT * FROM tbl_contact;
+------------+----------------+--------+--------------+
| kd_contact | nama           | gender | no_handphone |
+------------+----------------+--------+--------------+
|          1 | Nursalim       | L      | 0897367366   |
|          2 | Nani Indriyani | P      | 08156334     |
|          3 | Naura Krasiva  | P      | 0819783748   |
|          4 | Ahmad Fathoni  | L      | 085289489    |
+------------+----------------+--------+--------------+
4 rows in set (0.00 sec)

Terlihat pada query diatas bahwa kolom kd_contact datanya secara otomatis bertambah.

Baca juga : Menampilkan data di database MySQL.

Sekian tutorial singkat Bagaimana Cara Membuat Sequence Di MySQL. Semoga bermanfaat & Selamat Belajar Database MySQL.

Jika Anda menyukai tutorial ini, silahkan Anda share dan Anda bagikan dengan teman-teman Anda, dan jika Anda ingin berdiskusi tentang judul tutorial diatas, atau pun mau bertanya tentang tutorial ini silahkan Anda untuk menggunakan fasilitas komentar untuk berdiskusi dan bertanya di blog ini.

Salam,


~Nursalim~
Naura-Lab.blogspot.com

Bagaimana Cara Menggunakan Alias Di MySQL

Pada tutorial kali ini, Kita akan belajar Bagaimana Cara Menggunakan Alias di Database MySQL. Alias dapat digunakan pada level kolom maupun level tabel.


Apa Itu Alias?

Anda dapat menggunakan Alias (AS) di database MySQL untuk mempermudah dalam menulis query atau mempermudah dalam membaca query.

Dengan menggunakan Alias, kita dapat mempersingkat penulisan nama tabel dan kolom. Misalkan Anda mempunyai tabel dengan nama TBL_MAHASISWA, maka Anda dapat menggunakan alias pada tabel tersebut seperti MHS untuk mempersingkat penulisan query.

Sebagai contoh, Kita akan menggunakan tabel TBL_KARYAWAN dan TBL_JABATAN dengan data seperti dibawah ini:

TBL_KARYAWAN

nik nama gender kd_jabatan
0001 Nursalim Laki-Laki ACC
0002 Iin Parlina Perempuan PROG
0003 Wongso Wibowo Laki-Laki FIN
0004 Andi Rangkuti Laki-Laki PROG
0005 Naura Krasiva Perempuan ACC

TBL_JABATAN

kd_jabatan nama_jabatan
ACC Accounting
FIN Finance
PROG Programmer

Sebagai bahan latihan untuk tutorial kali, silahkan Anda buat table seperti di atas, dan masukkan data-data seperti diatas. Kemudian Anda langsung praktekkan sesuai contoh pada tutorial ini.

Baca Juga:

Menggunakan Alias Pada Tabel

Anda dapat menggunakan Alias pada nama tabel, dengan sintak seperti dibawah ini:

SELECT *
FROM nama_tabel AS nama_alias;

Contoh #1:

Dibawah ini adalah contoh sederhana penggunaan Alias pada nama tabel

SELECT tk.nik, tk.nama, tk.gender, tk.kd_jabatan
FROM tbl_karyawan AS tk;

Query di atas sebenarnya tidak terlalu berguna, karena Anda dapat langsung menggunakan query diatas tanpa harus menggunakan Alias.

Alias akan lebih terasa berguna, ketika Anda menggunakan Join Query yang menggabungkan beberapa tabel dalam satu query, seperti contoh #2 dibawah ini:

Contoh #2:

SELECT tk.nik, tk.nama, tk.kd_jabatan, td.nama_jabatan
FROM TBL_KARYAWAN AS tk,
     TBL_DEPARTEMEN AS td
WHERE tk.kd_departemen = td.kd_departemen;

Menggunakan Alias Pada Kolom

Anda dapat menggunakan Alias pada kolom seperti menggunakan Alias pada table. Sintaknya adalah sebagai berikut:

SELECT nama_kolom AS nama_kolom_as
  FROM nama_table;

Contoh #1:

SELECT nik AS "Nomor Induk Karyawan", nama AS "Nama Lengkap", gender AS "Jenis Kelamin"
  FROM tbl_karyawan;

Catatan:

Anda dapat memberikan tanda petik dua (") untuk nama alias yang lebih dari satu kata seperti query di atas.

Menggunakan Alias Untuk Sorting

Anda juga dapat menggunakan alias sebagai sorting untuk mengurutkan data baik secara ascending maupun descending. Perhatikan baik-baik contoh berikut ini:

SELECT nik AS "Nomor Induk Karyawan", nama AS "Nama Lengkap", gender AS "Jenis Kelamin"
  FROM tbl_karyawan
ORDER BY "Nama Lengkap";


Sekian tutorial singkat Bagaimana Cara Menggunakan Operator Alias Di MySQL. Semoga bermanfaat & Selamat Belajar Database MySQL.

Jika Anda menyukai tutorial ini, silahkan Anda share dan Anda bagikan dengan teman-teman Anda, dan jika Anda ingin berdiskusi tentang judul tutorial diatas, atau pun mau bertanya tentang tutorial ini silahkan Anda untuk menggunakan fasilitas komentar untuk berdiskusi dan bertanya di blog ini.

Salam,


~Nursalim~
Naura-Lab.blogspot.com

Bagaimana Cara Menggunakan Operator LIKE Dan NOT LIKE Di MySQL

Operator LIKE

Operator LIKE digunakan untuk menampilkan data berdasarkan sebuah pattern (pola) yang sesuai dengan keinginan/kebutuhan.



Sintak Dasar

Dibawah ini adalah sintak dasar operator LIKE di database MySQL:

SELECT *
  FROM nama_table
  WHERE nama_kolom LIKE pattern [ESCAPE 'escape_character'];

Penjelasan sintak:
  • pattern atau pola adalah sebuah ekspresi karakter yang sesuai (matching) dengan yang diinginkan. Pattern ini bersifat mandatory (wajib ada).
  • ESCAPE digunakan untuk escape character. ESCAPE ini bersifat opsional.
Ada 2 macam pola (pattern) yang digunakan pada operator LIKE, yaitu:
  1. % (percentage) wildcard
    Digunakan untuk pengecekan string yang sesuai (matching). Contoh : '%ab%', '%ab', 'ab%'

  2. _ (underscore) wildcard
    Digunakan untuk pengecekan karakter tunggal yang sesuai (matching). Contoh : 'T_', 'T_m'

Menggunakan % Wildcard

Dibawah ini adalah contoh penggunaan % wildcard pada operator LIKE:

Contoh #1

SELECT * FROM karyawan
WHERE nama LIKE 'A%';

Query diatas akan menampilkan data dari tabel karyawan yang mempunyai nama dengan huruf pertama huruf 'A', seperti Ahmad, Andi, Ali, Asmirandah, dan lain sebagainya.

Contoh #2

SELECT * FROM karyawan
WHERE nama like '%o';

Query diatas akan menampilkan data dari tabel karyawan yang mempunyai nama dengan huruf akhir huruf 'o', seperti nama Bagyo, Yoyo, Sumarno, dan lain sebagainya.

Contoh #3

SELECT * FROM karyawan
WHERE nama LIKE 'A_n';

Query diatas akan menampilkan data dari table karywan yang mempunyai nama dengan huruf awal 'A' dan huruf akhir 'n', seperti nama Aan, Andin, Abon, dan lain sebagainya.

Operator NOT LIKE

Operator NOT LIKE digunakan untuk menampilkan data berdasarkan sebuah pattern (pola) yang TIDAK sesuai.

Sintak Dasar

Operator NOT LIKE mempunyai sintak dasar sama seperti operator LIKE dengan menambahkan clausa NOT, yaitu:

SELECT *
  FROM nama_table
  WHERE nama_kolom NOT LIKE pattern [ESCAPE 'escape_character'];

Contoh:

Dibawah ini adalah contoh penggunaan operator NOT LIKE pada sebuah query SQL:

SELECT * FROM karyawan
WHERE nama NOT LIKE 'A%';

Query diatas akan menampilkan data pada tabel karyawan yang mempunyai nama dengan huruf pertama TIDAK mengandung huruf 'A' seperti Bagus, Cahyo, Dani, dan lain sebagainya.

Catatan Penting!

Anda harus hati-hati ketika menggunakan operator LIKE dan NOT LIKE dalam query, karena operator tersebut memaksa database MySQL untuk men-scan table untuk mencari data yang sesuai. Penggunaan operator ini akan memperlambat proses query ke database, karena mengabaikan database index.

Sekian tutorial singkat Bagaimana Cara Menggunakan Operator LIKE Dan NOT LIKE Di MySQL. Semoga bermanfaat & Selamat Belajar database MySQL.

Jika Anda menyukai tutorial ini, silahkan Anda share dan Anda bagikan dengan teman-teman Anda, dan jika Anda ingin berdiskusi tentang judul tutorial diatas, atau pun mau bertanya tentang tutorial ini silahkan Anda untuk menggunakan fasilitas komentar untuk berdiskusi dan bertanya di blog ini.

Salam,


~Nursalim~
Naura-Lab.blogspot.com

Bagaimana Cara Menggunakan Truncate Statement Di MySQL

Apa Itu Truncate Table?

TRUNCATE TABLE adalah salah satu perintah atau statement di database MySQL untuk mengosongkan atau menghapus semuda data yang ada di table. Perintah Truncate Table mirip dengan perintah DELETE table,  hanya lebih singkat dan sederhana tanpa menggunakan WHERE clause.


Sintak Dasar

Di bawah ini adalah sintak dasar Truncate Table di database MySQL:

TRUNCATE TABLE nama_table;

Contoh:

TRUNCATE TABLE mahasiswa;

Perintah diatas akan menghapus semua data di table Mahasiswa.

Catatan:
  • Perintah Truncate Table akan mereset sequence yang ada di table tersebut apabila salah satu kolomnya menggunakan constraint AUTO INCREMENT.
  • Jika Anda menggunakan engine database selain InnoDB, maka perintah Truncate Table akan menghapus semua data dan membuat table baru (re-create table).
  • Sedangkan jika Anda menggunakan engine database InnoDB, ketika tabel tersebut mempunyai beberapa Foreign Key, maka Truncate Table akan menghapus data baris per baris. Jika Foreign key tersebut mempunyai opsi DELETE CASCADE, maka data-data yang ada di child table (tabel referensi) akan ikut dihapus. Sedangkan jika tidak ada opsi DELETE CASCADE, Truncate Table akan menghapus data satu persatu, dan akan berhenti ketika ada error integrity constraint.

Truncate Vs Delete

Di bawah ini adalah tabel perbedaan antara Truncate Statement dan Delete Statement:

TRUNCATE DELETE
Merupakan kategori DDL (Data Definition Language) Merupakan kategori DML (Data Manipulation Language)
Akan menghapus seluruh record di table tanpa WHERE clause Akan menghapus record berdasarkan WHERE clause
Proses lebih cepat dan menggunakan lebih sedikit resource termasuk log transaksi Proses lebih lambat dan menggunakan lebih banyak resource termasuk log transaksi
Tidak dapat di rollback Dapat di rollback
Tidak dapat mengaktifkan trigger Dapat mengaktifkan trigger
Dapat mereset sequence Tidak dapat mereset sequence


Sekian tutorial Singkat Bagaimana Cara Menggunakan Truncate Statement Di MySQL. Semoga bermanfaat & Selamat Belajar database MySQL.

Jika Anda menyukai tutorial ini, silahkan Anda share dan Anda bagikan dengan teman-teman Anda, dan jika Anda ingin berdiskusi tentang judul tutorial diatas, atau pun mau bertanya tentang tutorial ini silahkan Anda untuk menggunakan fasilitas komentar untuk berdiskusi dan bertanya di blog ini.

Salam,


~Nursalim~
Naura-Lab.blogspot.com

Bagaimana Cara Menghapus (Delete) Data Di MySQL

Anda bisa menghapus record atau data di suatu table dengan menggunakan 2 cara, yaitu:
  1. Delete Statement
    Delete Statement digunakan untuk menghapus data berdasarkan query sesuai dengan keinginan pengguna. Delete statement termasuk salah satu perintah DML (Data Manipulation Language).

  2. Truncate Statement
    Sedangkan Truncate Statement adalah perintah untuk mengosongkan isi table. Sama seperti Delete Statement, tapi Truncate Statement tanpa menggunakan Where clause. Truncate Statement merupakan salah satu perintah DDL (Data Definition Language).

Pada tutorial kali ini, kita akan fokus membahas tentang Delete Statement di MySQL. Untuk pembahasan tentang Truncate Statement akan kita bahas pada tutorial selanjutnya.

Sintak Dasar

Dibawah ini adalah sintak dasar dari Delete statement di MySQL:

DELETE FROM nama_table
WHERE kolom = kondisi

Contoh

Dibawah ini adalah contoh sederhana dari Delete statement di MySQL:

DELETE FROM mahasiswa
WHERE jurusan = 'Teknik Informatika';

Menghapus Semua Data

Untuk menghapus semua data atau record di tabel, Anda bisa menggunakan Delete statement TANPA Where clause.

Contoh:

DELETE FROM mahasiswa;

Perintah diatas akan menghapus semua data di tabel MAHASISWA.

Menghapus Data Atau Record Tertentu

Untuk menghapus data atau record tertentu pada table, Anda dapat menggunakan WHERE clause pada Delete statement.

Contoh:

DELETE FROM mahasiswa
WHERE jurusan = 'Teknik Informatika'
AND gender = 'L';

Perintah diatas akan menghapus data pada tabel Mahasiswa yang berjenis kelamin laki-lai dan mempunyai jurusan Teknik Informatika.

Penggunaan Operator Pada Delete Statement

Disamping menggunakan operator "=" pada Where clause, Kita juga bisa menggunakan operator lainnya sesuai kebutuhan.

Dibawah ini adalah macam-macam operator yang bisa digunakan pada Delete statement beserta contohnya:

  • Operator LIKE , NOT LIKE

    Kita dapat menggunakan operator LIKE pada Delete Statement. Untuk lebih jelasnya, Anda dapat melihat contoh dibawah ini:

    Contoh #1.

    DELETE FROM mahasiswa
    WHERE jurusan LIKE '%Teknik%';
    
    

    Contoh #2.

    DELETE FROM mahasiswa
    WHERE jurusan NOT LIKE '%Teknik%';
    
    
  • Operator BETWEEN

    Kita dapat menggunakan operator BETWEEN pada Delete statement. Untuk lebih jelasnya, Anda dapat melihat contoh dibawah ini:

    DELETE FROM mahasiswa
    WHERE ipk BETWEEN '1.0' AND '2.3';
     
    
  • Operator IN, NOT IN

    Kita juga dapat menggunakan operator IN dan NOT IN pada Delete Statement. Untuk lebih jelasnya, Anda dapat melihat contoh dibawah ini:

    Contoh #1.

    DELETE FROM mahasiswa
    WHERE jurusan IN ('Teknik Informatika','Teknik Mesin');
    
    
    Contoh #2.

    DELETE FROM mahasiswa
    WHERE jurusan NOT IN ('Teknik Informatika','Teknik Mesin');
    
    
  • Operator IS NULL, IS NOT NULL

    Kita juga dapat menggunakan operator IS NULL dan IS NOT NULL pada Delete Statement. Untuk lebih jelasnya, Anda dapat melihat contoh dibawah ini:

    Contoh #1.

    DELETE FROM mahasiswa
    WHERE jurusan IS NULL;
    
    
    Contoh #2.

    DELETE FROM mahasiswa
    WHERE jurusan IS NOT NULL;
    
    
  • Operator =, <>, >, >=, <, <=

  • Anda dapat menggunakan operator =, <>, >, >=, <, dan <= pada Delete statement. Untuk lebih jelasnya, Anda dapat melihat contoh dibawah ini:

    Contoh #1.

    DELETE FROM mahasiswa
    WHERE jurusan <> 'Teknik Informatika';
    
    
    Contoh #2.

    DELETE FROM mahasiswa
    WHERE ipk > 3,75;
    

Sekian tutorial Singkat Bagaimana Cara Menghapus Data Di MySQL. Semoga bermanfaat & Selamat Belajar database MySQL.

Jika Anda menyukai tutorial ini, silahkan Anda share dan Anda bagikan dengan teman-teman Anda, dan jika Anda ingin berdiskusi tentang judul tutorial diatas, atau pun mau bertanya tentang tutorial ini silahkan Anda untuk menggunakan fasilitas komentar untuk berdiskusi dan bertanya di blog ini.

Salam,


~Nursalim~
Naura-Lab.blogspot.com

Bagaimana Cara Menggunakan Perintah Update Statement Di MySQL

Pada tutorial kali ini, Kita akan belajar Bagaimana Cara Menggunakan Update Statement di database MySQL. Update Statement digunakan untuk mengubah atau mengupdate sebuah record di table.


Sintak Dasar

Dibawah ini adalah sintak dasar Update statement di MySQL:

UPDATE nama_table
   SET nama_kolom = nilai,
       [nama_kolom = nilai],
       ...
 WHERE [kondisi]; 

Contoh

Dibawah ini adalah contoh penggunaan Update statement di MySQL:

UPDATE mahasiswa
   SET nama = 'Mr. Nursalim',
       jurusan = 'Teknik Informatika'
 WHERE nama = 'Nursalim';

Latihan

Di bawah ini adalah contoh latihan penggunaan Update statement di MySQL:
  • Login ke database MySQL

    # mysql -u root -p
    Enter password:
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 1
    Server version: 5.5.36 MySQL Community Server (GPL)
    
    Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement
    
    
  • Pilih database yang akan digunakan

    mysql> use akademik;
    Database changed
    
    
  • Buatlah sebuah table dengan nama MATA_KULIAH sebagai latihan

    mysql> CREATE TABLE mata_kuliah(
        -> kode_matkul VARCHAR(5),
        -> nama_matkul VARCHAR(30),
        -> PRIMARY KEY(kode_matkul));
    Query OK, 0 rows affected (0.14 sec)
    
    
    Baca juga: Membuat table di database MySQL

  • Insert data ke table MATA_KULIAH

    mysql> INSERT INTO mata_kuliah
        -> VALUES('B001','Biologi');
    Query OK, 1 row affected (0.06 sec)
    
    mysql> INSERT INTO mata_kuliah
        -> VALUES('M001','Matematika');
    Query OK, 1 row affected (0.13 sec)
    
    mysql> INSERT INTO mata_kuliah
        -> VALUES('F001','Fisika');
    Query OK, 1 row affected (0.07 sec)
    
    
    Baca juga : Menggunakan Insert Statement di MySQL.

  • Tampilkan semua data dari table MATA_KULIAH

    mysql> SELECT * FROM mata_kuliah;
    +-------------+-------------+
    | kode_matkul | nama_matkul |
    +-------------+-------------+
    | B001        | Biologi     |
    | F001        | Fisika      |
    | M001        | Matematika  |
    +-------------+-------------+
    3 rows in set (0.00 sec)
    
    
    Baca juga: Menggunakan Select Statement di MySQL.

  • Update data Nama Mata Kuliah menjadi "Biologi Forensik" dengan Kode Mata Kuliah "B001".

    mysql> UPDATE mata_kuliah
        -> SET nama_matkul = 'Biologi Forensik'
        -> WHERE kode_matkul = 'B001';
    Query OK, 1 row affected (0.07 sec)
    Rows matched: 1  Changed: 1  Warnings: 0
    
    
    mysql> SELECT * FROM mata_kuliah
        -> WHERE kode_matkul = 'B001';
    +-------------+------------------+
    | kode_matkul | nama_matkul      |
    +-------------+------------------+
    | B001        | Biologi Forensik |
    +-------------+------------------+
    1 row in set (0.00 sec)
    
    
  • Update data Nama Mata Kuliah menjadi "Matematika Diskrit" dengan Kode Mata Kuliah "M001".

    mysql> UPDATE mata_kuliah
        -> SET nama_matkul = 'Matematika Diskrit'
        -> WHERE kode_matkul = 'M001';
    Query OK, 1 row affected (0.05 sec)
    Rows matched: 1  Changed: 1  Warnings: 0
    
    
    mysql> SELECT * FROM mata_kuliah
        -> WHERE kode_matkul = 'M001';
    +-------------+--------------------+
    | kode_matkul | nama_matkul        |
    +-------------+--------------------+
    | M001        | Matematika Diskrit |
    +-------------+--------------------+
    1 row in set (0.00 sec)
    
    
  • Update data Nama Mata Kuliah menjadi "Fisika Modern" dengan Kode Mata Kuliah "F001"

    mysql> UPDATE mata_kuliah
        -> SET nama_matkul = 'Fisika Modern'
        -> WHERE kode_matkul = 'F001';
    Query OK, 1 row affected (0.06 sec)
    Rows matched: 1  Changed: 1  Warnings: 0
    
    
    mysql> SELECT * FROM mata_kuliah
        -> WHERE kode_matkul = 'F001';
    +-------------+---------------+
    | kode_matkul | nama_matkul   |
    +-------------+---------------+
    | F001        | Fisika Modern |
    +-------------+---------------+
    1 row in set (0.01 sec)
    
    
  • Tampilkan kembali semua data dari tabel MATA_KULIAH

    mysql> SELECT * FROM mata_kuliah;
    +-------------+--------------------+
    | kode_matkul | nama_matkul        |
    +-------------+--------------------+
    | B001        | Biologi Forensik   |
    | F001        | Fisika Modern      |
    | M001        | Matematika Diskrit |
    +-------------+--------------------+
    3 rows in set (0.00 sec)
    
    
  • Referensi


Sekian tutorial singkat Bagaimana Cara Menggunakan Update Statement Di MySQL. Semoga bermanfaat & Selamat Belajar database MySQL.

Jika Anda menyukai tutorial ini, silahkan Anda share dan Anda bagikan dengan teman-teman Anda, dan jika Anda ingin berdiskusi tentang judul tutorial diatas, atau pun mau bertanya tentang tutorial ini silahkan Anda untuk menggunakan fasilitas komentar untuk berdiskusi dan bertanya di blog ini.

Salam,


~Nursalim~
Naura-Lab.blogspot.com

Bagaimana Cara Mengurutkan Data (Sorting) di MySQL

Sintak Dasar

Secara umum, sintak dasar untuk mengurutkan data di MySQL adalah seperti dibawah ini:

SELECT kolom_1, kolom_2, ..., kolom_n
ORDER BY kolom_1, [kolom_2] [ASC | DESC];



Penjelasan Sintak:
  • Keyword ASC digunakan untuk mengurutkan data secara Ascending.
  • Keyword DESC digunakan untuk mengurutkan data secara Descending.
  • Secara default, ketika ORDER BY digunakan tanpa opsi ASC atau DESC, maka data yang diurutkan adalah Ascending.
  • Anda bisa menggunakan opsi ASC dan DESC secara bersamaan sesuai dengan kebutuhan.
Anda juga bisa mengurutkan data berdasarkan posisi kolom suatu table, yaitu seperti dibawah ini:

SELECT * FROM nama_table
ORDER BY posisi_kolom [ASC | DESC];

Penjelasan Sintak:
  • posisi_kolom adalah posisi dari suatu kolom di table, seperti 1, 2, 3, dan seterusnya berdasarkan urutan kolom ketika tabel dibuat.

Contoh Query

Dibawah ini adalah contoh penggunaan query ORDER BY Clause,

SELECT * FROM mahasiswa
ORDER BY nama ASC;

Anda juga bisa menggunakan perintah ORDER BY Clause dengan posisi kolom seperti di bawah ini:

SELECT * FROM mahasiswa
ORDER BY 1 ASC;

Latihan


Sebagai latihan Bagaimana Cara Mengurutkan Data di MySQL, coba Anda ikuti step-step di bawah ini
  • Login ke database MySQL

    # mysql -u root
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 1
    Server version: 5.5.36 MySQL Community Server (GPL)
    
    Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    
  • Pilih database yang akan digunakan

    mysql> use akademik;
    Database changed
    

  • Buatlah tabel MAHASISWA dengan menggunakan perintah sebagai berikut

    mysql> CREATE TABLE mahasiswa(
        -> npm VARCHAR(10),
        -> nama VARCHAR(30),
        -> gender VARCHAR(1),
        -> asal VARCHAR(30),
        -> jurusan VARCHAR(30),
        -> ipk DOUBLE(3,2),
        -> PRIMARY KEY(npm)
        -> );
    Query OK, 0 rows affected (0.15 sec)
    

  • Insert data ke tabel MAHASISWA dengan data sebagai berikut:

    mysql> INSERT INTO mahasiswa
        -> VALUES('20151001','Nurul','P','Jakarta','Akuntansi',3.1);
    Query OK, 1 row affected (0.07 sec)
    
    mysql> INSERT INTO mahasiswa
        -> VALUES('20152001','Budi','L','Bandung','Teknik Mesin',2.9);
    Query OK, 1 row affected (0.06 sec)
    
    mysql> INSERT INTO mahasiswa
        -> VALUES('20153001','Ida','P','Semarang','Sastra Inggris',3.5);
    Query OK, 1 row affected (0.11 sec)
    
    mysql> INSERT INTO mahasiswa
        -> VALUES('20154001','Eko','L','Jakarta','Teknik Informatika',3.25);
    Query OK, 1 row affected (0.12 sec)
    
    mysql> INSERT INTO mahasiswa
        -> VALUES('20151002','Dina','P','Surabaya','Akuntansi',3.3);
    Query OK, 1 row affected (0.06 sec)
    
    mysql> INSERT INTO mahasiswa
        -> VALUES('20154002','Doni','L','Makassar','Teknik Informatika',2.75);
    Query OK, 1 row affected (0.07 sec)
    
    mysql> INSERT INTO mahasiswa
        -> VALUES('20154003','Dinda','P','Jakarta','Teknik Informatika',3.65);
    Query OK, 1 row affected (0.04 sec)
    
    mysql> INSERT INTO mahasiswa
        -> VALUES('20151003','Naura','P','Bandung','Akuntansi',2.85);
    Query OK, 1 row affected (0.09 sec)
    
    mysql> INSERT INTO mahasiswa
        -> VALUES('20153002','Soni','L','Surabaya','Sastra Inggris',3.3);
    Query OK, 1 row affected (0.07 sec)
    
    mysql> INSERT INTO mahasiswa
        -> VALUES('20154004','Iski','P','Semarang','Teknik Informatika',3.8);
    Query OK, 1 row affected (0.09 sec)
    
    
  • Tampilkan semua data Mahasiswa dan urutkan berdasarkan nama (ascending)

    mysql> SELECT * FROM mahasiswa
        -> ORDER BY nama ASC;
    +----------+-------+--------+----------+--------------------+------+
    | npm      | nama  | gender | asal     | jurusan            | ipk  |
    +----------+-------+--------+----------+--------------------+------+
    | 20152001 | Budi  | L      | Bandung  | Teknik Mesin       | 2.90 |
    | 20151002 | Dina  | P      | Surabaya | Akuntansi          | 3.30 |
    | 20154003 | Dinda | P      | Jakarta  | Teknik Informatika | 3.65 |
    | 20154002 | Doni  | L      | Makassar | Teknik Informatika | 2.75 |
    | 20154001 | Eko   | L      | Jakarta  | Teknik Informatika | 3.25 |
    | 20153001 | Ida   | P      | Semarang | Sastra Inggris     | 3.50 |
    | 20154004 | Iski  | P      | Semarang | Teknik Informatika | 3.80 |
    | 20151003 | Naura | P      | Bandung  | Akuntansi          | 2.85 |
    | 20151001 | Nurul | P      | Jakarta  | Akuntansi          | 3.10 |
    | 20153002 | Soni  | L      | Surabaya | Sastra Inggris     | 3.30 |
    +----------+-------+--------+----------+--------------------+------+
    10 rows in set (0.01 sec)
    
    
  • Tampilkan semua data Mahasiswa dan urutkan berdasarkan nama (descending)

    mysql> SELECT * FROM mahasiswa
        -> ORDER BY nama DESC;
    +----------+-------+--------+----------+--------------------+------+
    | npm      | nama  | gender | asal     | jurusan            | ipk  |
    +----------+-------+--------+----------+--------------------+------+
    | 20153002 | Soni  | L      | Surabaya | Sastra Inggris     | 3.30 |
    | 20151001 | Nurul | P      | Jakarta  | Akuntansi          | 3.10 |
    | 20151003 | Naura | P      | Bandung  | Akuntansi          | 2.85 |
    | 20154004 | Iski  | P      | Semarang | Teknik Informatika | 3.80 |
    | 20153001 | Ida   | P      | Semarang | Sastra Inggris     | 3.50 |
    | 20154001 | Eko   | L      | Jakarta  | Teknik Informatika | 3.25 |
    | 20154002 | Doni  | L      | Makassar | Teknik Informatika | 2.75 |
    | 20154003 | Dinda | P      | Jakarta  | Teknik Informatika | 3.65 |
    | 20151002 | Dina  | P      | Surabaya | Akuntansi          | 3.30 |
    | 20152001 | Budi  | L      | Bandung  | Teknik Mesin       | 2.90 |
    +----------+-------+--------+----------+--------------------+------+
    10 rows in set (0.00 sec)
    
    
  • Tampilkan semua data Mahasiswa dan urutkan berdasarkan nama dan asal (ascending)

    mysql> SELECT * FROM mahasiswa
        -> ORDER BY nama ASC, asal ASC;
    +----------+-------+--------+----------+--------------------+------+
    | npm      | nama  | gender | asal     | jurusan            | ipk  |
    +----------+-------+--------+----------+--------------------+------+
    | 20152001 | Budi  | L      | Bandung  | Teknik Mesin       | 2.90 |
    | 20151002 | Dina  | P      | Surabaya | Akuntansi          | 3.30 |
    | 20154003 | Dinda | P      | Jakarta  | Teknik Informatika | 3.65 |
    | 20154002 | Doni  | L      | Makassar | Teknik Informatika | 2.75 |
    | 20154001 | Eko   | L      | Jakarta  | Teknik Informatika | 3.25 |
    | 20153001 | Ida   | P      | Semarang | Sastra Inggris     | 3.50 |
    | 20154004 | Iski  | P      | Semarang | Teknik Informatika | 3.80 |
    | 20151003 | Naura | P      | Bandung  | Akuntansi          | 2.85 |
    | 20151001 | Nurul | P      | Jakarta  | Akuntansi          | 3.10 |
    | 20153002 | Soni  | L      | Surabaya | Sastra Inggris     | 3.30 |
    +----------+-------+--------+----------+--------------------+------+
    10 rows in set (0.00 sec)
    
    
  • Tampilkan semua data Mahasiswa dan urutkan berdasarkan nama (ascending), dan Jurusan (descending)

    mysql> SELECT * FROM mahasiswa
        -> ORDER BY nama ASC, jurusan DESC;
    +----------+-------+--------+----------+--------------------+------+
    | npm      | nama  | gender | asal     | jurusan            | ipk  |
    +----------+-------+--------+----------+--------------------+------+
    | 20152001 | Budi  | L      | Bandung  | Teknik Mesin       | 2.90 |
    | 20151002 | Dina  | P      | Surabaya | Akuntansi          | 3.30 |
    | 20154003 | Dinda | P      | Jakarta  | Teknik Informatika | 3.65 |
    | 20154002 | Doni  | L      | Makassar | Teknik Informatika | 2.75 |
    | 20154001 | Eko   | L      | Jakarta  | Teknik Informatika | 3.25 |
    | 20153001 | Ida   | P      | Semarang | Sastra Inggris     | 3.50 |
    | 20154004 | Iski  | P      | Semarang | Teknik Informatika | 3.80 |
    | 20151003 | Naura | P      | Bandung  | Akuntansi          | 2.85 |
    | 20151001 | Nurul | P      | Jakarta  | Akuntansi          | 3.10 |
    | 20153002 | Soni  | L      | Surabaya | Sastra Inggris     | 3.30 |
    +----------+-------+--------+----------+--------------------+------+
    10 rows in set (0.00 sec)
    
    
  • Tampilkan semua data Mahasiswa dan urutkan berdasarkan posisi kolom ke-6 (IPK) secara ascending.

    mysql> SELECT * FROM mahasiswa
        -> ORDER BY 6 ASC;
    +----------+-------+--------+----------+--------------------+------+
    | npm      | nama  | gender | asal     | jurusan            | ipk  |
    +----------+-------+--------+----------+--------------------+------+
    | 20154002 | Doni  | L      | Makassar | Teknik Informatika | 2.75 |
    | 20151003 | Naura | P      | Bandung  | Akuntansi          | 2.85 |
    | 20152001 | Budi  | L      | Bandung  | Teknik Mesin       | 2.90 |
    | 20151001 | Nurul | P      | Jakarta  | Akuntansi          | 3.10 |
    | 20154001 | Eko   | L      | Jakarta  | Teknik Informatika | 3.25 |
    | 20153002 | Soni  | L      | Surabaya | Sastra Inggris     | 3.30 |
    | 20151002 | Dina  | P      | Surabaya | Akuntansi          | 3.30 |
    | 20153001 | Ida   | P      | Semarang | Sastra Inggris     | 3.50 |
    | 20154003 | Dinda | P      | Jakarta  | Teknik Informatika | 3.65 |
    | 20154004 | Iski  | P      | Semarang | Teknik Informatika | 3.80 |
    +----------+-------+--------+----------+--------------------+------+
    10 rows in set (0.00 sec)
    
    

Referensi


Sekian tutorial Singkat Bagaimana Cara Mengurutkan Data (Sorting) di MySQL. Semoga bermanfaat & Selamat Belajar database MySQL.

Jika Anda menyukai tutorial ini, silahkan anda share dan bagikan dengan teman-teman Anda, dan jika Anda ingin berdiskusi tentang judul tutorial diatas, atau pun mau bertanya tentang tutorial ini silahkan Anda untuk menggunakan fasilitas komentar untuk berdiskusi dan bertanya di blog ini.

Salam,

Naura-Lab

Bagaimana Cara Menggunakan WHERE Clause di MySQL

Pada tutorial MySQL sebelumnya, Kita telah belajar Bagaimana Cara Menggunakan Perintah SELECT Query di MySQL. Pada pokok bahasan tutorial kali ini, kita akan belajar lebih mendalam tentang perintah SELECT yaitu dengan menambahkan WHERE Clause pada perintah tersebut.



WHERE Clause pada perintah SELECT digunakan untuk menyeleksi data atau record sesuai dengan kondisi yang diinginkan.

Sintak Dasar

Dibawah ini adalah sintak dasar perintah SELECT dengan WHERE Clause.

SELECT *
FROM nama_table
WHERE kondisi;

Contoh:

SELECT *
  FROM mahasiswa
 WHERE nama = 'Budi';

Perintah diatas akan menampilkan data dari table mahasiswa yang bernama 'Budi'.

Operator Yang Digunakan

Di bawah ini adalah tabel operator-operator yang sering digunakan dalam WHERE Clause di SELECT Statement.

Operator Keterangan
= Sama dengan
!= atau <> Tidak sama dengan
> Lebih besar dari
>= Lebih besar dari atau sama dengan
< Kurang dari
<= Kurang dari atau sama dengan
IS NULL Apakah record sama dengan null
IS NOT NULL Apakah record tidak sama dengan null
IN Apakah record berada dalam
NOT IN Apakah record berada diluar
LIKE Pencarian record berdasarkan wildcard
NOT LIKE Pencarian record tidak berdasarkan wildcard
BETWEEN Pencarian record berada dalam range antara nilai minimum dan maksimum
AND Logika AND (dan)
OR Logika OR (atau)

Contoh Kasus

Untuk lebih memperjelas pokok bahasan tutorial ini, saya akan memberikan beberapa contoh kasus yang sering banyak digunakan dalam penggunaan WHERE clause.

Silahkan anda ikuti langkah-langkah di bawah ini.
  1. Login ke Database MySQL

    # mysql -u root -p
    Enter password:
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 1
    Server version: 5.5.36 MySQL Community Server (GPL)
    
    Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement
    

  2. Pilih database yang digunakan

    mysql> use akademik;
    Database changed
    

  3. Buat table MAHASISWA untuk menampung data mahasiswa dengan seperti dibawah ini

    mysql> CREATE TABLE mahasiswa(
        -> npm VARCHAR(10),
        -> nama VARCHAR(30),
        -> gender VARCHAR(1),
        -> asal VARCHAR(30),
        -> jurusan VARCHAR(30),
        -> ipk DOUBLE(3,2),
        -> PRIMARY KEY(npm)
        -> );
    Query OK, 0 rows affected (0.15 sec)
    
    
  4. Isi data atau Insert Data MAHASISWA dengan data seperti di bawah ini

    NPM Nama Gender Asal Jurusan IPK
    20151001 Nurul P Jakarta Akuntansi 3,1
    20152001 Budi L Bandung Teknik Mesin 2,9
    20153001 Ida P Semarang Sastra Inggris 3,5
    20154001 Eko L Jakarta Teknik Informatika 3,25
    20151002 Dina P Surabaya Akuntansi 3,3
    20154002 Doni L Makassar Teknik Informatika 2,75
    20154003 Dinda P Jakarta Teknik Informatika 3,65
    20151003 Naura P Bandung Akuntansi 2,85
    20153002 Soni L Surabaya Sastra Inggris 3,3
    20154004 Iski P Semarang Teknik Informatika 3,8

    mysql> INSERT INTO mahasiswa
        -> VALUES('20151001','Nurul','P','Jakarta','Akuntansi',3.1);
    Query OK, 1 row affected (0.07 sec)
    
    mysql> INSERT INTO mahasiswa
        -> VALUES('20152001','Budi','L','Bandung','Teknik Mesin',2.9);
    Query OK, 1 row affected (0.06 sec)
    
    mysql> INSERT INTO mahasiswa
        -> VALUES('20153001','Ida','P','Semarang','Sastra Inggris',3.5);
    Query OK, 1 row affected (0.11 sec)
    
    mysql> INSERT INTO mahasiswa
        -> VALUES('20154001','Eko','L','Jakarta','Teknik Informatika',3.25);
    Query OK, 1 row affected (0.12 sec)
    
    mysql> INSERT INTO mahasiswa
        -> VALUES('20151002','Dina','P','Surabaya','Akuntansi',3.3);
    Query OK, 1 row affected (0.06 sec)
    
    mysql> INSERT INTO mahasiswa
        -> VALUES('20154002','Doni','L','Makassar','Teknik Informatika',2.75);
    Query OK, 1 row affected (0.07 sec)
    
    mysql> INSERT INTO mahasiswa
        -> VALUES('20154003','Dinda','P','Jakarta','Teknik Informatika',3.65);
    Query OK, 1 row affected (0.04 sec)
    
    mysql> INSERT INTO mahasiswa
        -> VALUES('20151003','Naura','P','Bandung','Akuntansi',2.85);
    Query OK, 1 row affected (0.09 sec)
    
    mysql> INSERT INTO mahasiswa
        -> VALUES('20154004','Iski','P','Semarang','Teknik Informatika',3.8);
    Query OK, 1 row affected (0.09 sec)
    
    
  5. Tampilkan semua data Mahasiswa

    mysql> SELECT * FROM mahasiswa;
    +----------+-------+--------+----------+--------------------+------+
    | npm      | nama  | gender | asal     | jurusan            | ipk  |
    +----------+-------+--------+----------+--------------------+------+
    | 20151001 | Nurul | P      | Jakarta  | Akuntansi          | 3.10 |
    | 20151002 | Dina  | P      | Surabaya | Akuntansi          | 3.30 |
    | 20151003 | Naura | P      | Bandung  | Akuntansi          | 2.85 |
    | 20152001 | Budi  | L      | Bandung  | Teknik Mesin       | 2.90 |
    | 20153001 | Ida   | P      | Semarang | Sastra Inggris     | 3.50 |
    | 20153002 | Soni  | L      | Surabaya | Sastra Inggris     | 3.30 |
    | 20154001 | Eko   | L      | Jakarta  | Teknik Informatika | 3.25 |
    | 20154002 | Doni  | L      | Makassar | Teknik Informatika | 2.75 |
    | 20154003 | Dinda | P      | Jakarta  | Teknik Informatika | 3.65 |
    | 20154004 | Iski  | P      | Semarang | Teknik Informatika | 3.80 |
    +----------+-------+--------+----------+--------------------+------+
    10 rows in set (0.00 sec)
    
    
  6. Tampilkan semua data Mahasiswa yang berjenis kelamin Pria

    mysql> SELECT * FROM mahasiswa
        -> WHERE gender = 'L';
    +----------+------+--------+----------+--------------------+------+
    | npm      | nama | gender | asal     | jurusan            | ipk  |
    +----------+------+--------+----------+--------------------+------+
    | 20152001 | Budi | L      | Bandung  | Teknik Mesin       | 2.90 |
    | 20153002 | Soni | L      | Surabaya | Sastra Inggris     | 3.30 |
    | 20154001 | Eko  | L      | Jakarta  | Teknik Informatika | 3.25 |
    | 20154002 | Doni | L      | Makassar | Teknik Informatika | 2.75 |
    +----------+------+--------+----------+--------------------+------+
    4 rows in set (0.00 sec)
    
    
  7. Tampilkan data mahasiswa berjenis kelamin pria dan yang mempunyai jurusan Teknik Informatika

    mysql> SELECT * FROM mahasiswa
        -> WHERE gender = 'L'
        -> AND jurusan = 'Teknik Informatika';
    +----------+------+--------+----------+--------------------+------+
    | npm      | nama | gender | asal     | jurusan            | ipk  |
    +----------+------+--------+----------+--------------------+------+
    | 20154001 | Eko  | L      | Jakarta  | Teknik Informatika | 3.25 |
    | 20154002 | Doni | L      | Makassar | Teknik Informatika | 2.75 |
    +----------+------+--------+----------+--------------------+------+
    2 rows in set (0.00 sec)
    
    
  8. Tampilkan data mahasiswa yang berasal dari Jakarta atau mempunyai jurusan Sastra Inggris

    mysql> SELECT * FROM mahasiswa
        -> WHERE asal = 'Jakarta'
        -> OR jurusan = 'Sastra Inggris';
    +----------+-------+--------+----------+--------------------+------+
    | npm      | nama  | gender | asal     | jurusan            | ipk  |
    +----------+-------+--------+----------+--------------------+------+
    | 20151001 | Nurul | P      | Jakarta  | Akuntansi          | 3.10 |
    | 20153001 | Ida   | P      | Semarang | Sastra Inggris     | 3.50 |
    | 20153002 | Soni  | L      | Surabaya | Sastra Inggris     | 3.30 |
    | 20154001 | Eko   | L      | Jakarta  | Teknik Informatika | 3.25 |
    | 20154003 | Dinda | P      | Jakarta  | Teknik Informatika | 3.65 |
    +----------+-------+--------+----------+--------------------+------+
    5 rows in set (0.00 sec)
    
    
  9. Tampilkan data mahasiswa yang IPK-nya antara 2,5 sampai 3,25

    mysql> SELECT * FROM mahasiswa
        -> WHERE ipk BETWEEN 2.5 AND 3.25;
    +----------+-------+--------+----------+--------------------+------+
    | npm      | nama  | gender | asal     | jurusan            | ipk  |
    +----------+-------+--------+----------+--------------------+------+
    | 20151001 | Nurul | P      | Jakarta  | Akuntansi          | 3.10 |
    | 20151003 | Naura | P      | Bandung  | Akuntansi          | 2.85 |
    | 20152001 | Budi  | L      | Bandung  | Teknik Mesin       | 2.90 |
    | 20154001 | Eko   | L      | Jakarta  | Teknik Informatika | 3.25 |
    | 20154002 | Doni  | L      | Makassar | Teknik Informatika | 2.75 |
    +----------+-------+--------+----------+--------------------+------+
    5 rows in set (0.00 sec)
    
    
  10. Tampilkan data mahasiswa yang IPK-nya diatas 3,5

    mysql> SELECT * FROM mahasiswa
        -> WHERE ipk > 3.5;
    +----------+-------+--------+----------+--------------------+------+
    | npm      | nama  | gender | asal     | jurusan            | ipk  |
    +----------+-------+--------+----------+--------------------+------+
    | 20154003 | Dinda | P      | Jakarta  | Teknik Informatika | 3.65 |
    | 20154004 | Iski  | P      | Semarang | Teknik Informatika | 3.80 |
    +----------+-------+--------+----------+--------------------+------+
    2 rows in set (0.00 sec)
    
    
  11. Tampilkan data mahasiswa yang mempunyai asal dari Jakarta, Bandung, dan Semarang

    mysql> SELECT * FROM mahasiswa
        -> WHERE asal in ('Jakarta','Bandung','Semarang');
    +----------+-------+--------+----------+--------------------+------+
    | npm      | nama  | gender | asal     | jurusan            | ipk  |
    +----------+-------+--------+----------+--------------------+------+
    | 20151001 | Nurul | P      | Jakarta  | Akuntansi          | 3.10 |
    | 20151003 | Naura | P      | Bandung  | Akuntansi          | 2.85 |
    | 20152001 | Budi  | L      | Bandung  | Teknik Mesin       | 2.90 |
    | 20153001 | Ida   | P      | Semarang | Sastra Inggris     | 3.50 |
    | 20154001 | Eko   | L      | Jakarta  | Teknik Informatika | 3.25 |
    | 20154003 | Dinda | P      | Jakarta  | Teknik Informatika | 3.65 |
    | 20154004 | Iski  | P      | Semarang | Teknik Informatika | 3.80 |
    +----------+-------+--------+----------+--------------------+------+
    7 rows in set (0.00 sec)
    
    
  12. Tampilkan data mahasiswa yang namanya di awali dengan huruf "D"

    mysql> SELECT * FROM mahasiswa
        -> WHERE nama like 'D%';
    +----------+-------+--------+----------+--------------------+------+
    | npm      | nama  | gender | asal     | jurusan            | ipk  |
    +----------+-------+--------+----------+--------------------+------+
    | 20151002 | Dina  | P      | Surabaya | Akuntansi          | 3.30 |
    | 20154002 | Doni  | L      | Makassar | Teknik Informatika | 2.75 |
    | 20154003 | Dinda | P      | Jakarta  | Teknik Informatika | 3.65 |
    +----------+-------+--------+----------+--------------------+------+
    3 rows in set (0.00 sec)
    
    
  13. Tampilkan data mahasiswa yang namanya di akhiri dengan huruf "a"

    mysql> SELECT * FROM mahasiswa
        -> WHERE nama like '%a';
    +----------+-------+--------+----------+--------------------+------+
    | npm      | nama  | gender | asal     | jurusan            | ipk  |
    +----------+-------+--------+----------+--------------------+------+
    | 20151002 | Dina  | P      | Surabaya | Akuntansi          | 3.30 |
    | 20151003 | Naura | P      | Bandung  | Akuntansi          | 2.85 |
    | 20153001 | Ida   | P      | Semarang | Sastra Inggris     | 3.50 |
    | 20154003 | Dinda | P      | Jakarta  | Teknik Informatika | 3.65 |
    +----------+-------+--------+----------+--------------------+------+
    4 rows in set (0.00 sec)
    
    

Referensi


Sekian tutorial Singkat Bagaimana Cara Menggunakan WHERE Clause Query di MySQL. Semoga bermanfaat & Selamat Belajar database MySQL.

Jika Anda menyukai tutorial ini, silahkan anda share dan bagikan dengan teman-teman Anda, dan jika Anda ingin berdiskusi tentang judul tutorial diatas, atau pun mau bertanya tentang tutorial ini silahkan Anda untuk menggunakan fasilitas komentar untuk berdiskusi dan bertanya di blog ini.

Salam,

Naura-Lab