Setelah koneksi ke MySQL Server dan MySQL Client berhasil, saatnya kita mempelajari perintah-perintah MySQL. Untuk  Tutorial Belajar MySQL: Dasar Penulisan Query MySQL ini kita akan mempelajari format dan cara penulisan perintah (query) MySQL dengan cmd Windows, dan beberapa tata cara penulisan (syntax) MySQL.
Menjalankan Perintah (query) MySQL
Setiap perintah, atau sering juga disebut "query" di dalam MySQL harus diakhiri dengan tanda titik koma ";" dan akan dieksekusi setelah tombol Enter ditekan. Selama query MySQL belum diakhiri dengan ";" maka itu dianggap masih dalam satu perintah.
Ketika kita menjalankan sebuah perintah MySQL (query), query tersebut akan dikirim dari MySQL Client ke MySQL Server untuk di proses, setelah proses selesai, hasilnya akan dikirim kembali ke MySQL Client.
Agar lebih mudah memahami query MySQL, kita akan langsung praktek beberapa query sederhana. Silahkan jalankan MySQL Server dan masuk sebagai user root dari MySQL Client (tutorialnya telah kita bahas pada Tutorial Belajar MySQL: Cara Menjalankan MySQL Server, dan Tutorial Belajar MySQL: Cara Menjalankan MySQL Client).
Setelah masuk ke dalam MySQL Client (ditandai dengan awalan mysql> pada jendela cmd), kita akan mencoba beberapa perintah MySQL sederhana. Ketikkan perintah berikut: SELECT NOW(); lalu akhiri dengan Enter pada keyboard.
mysql> SELECT NOW(); +---------------------+ | NOW()Â Â Â Â Â Â Â Â Â Â Â Â Â Â | +---------------------+ | 2014-11-13 09:21:08 | +---------------------+ 1 row in set (0.69 sec)
Contoh query diatas adalah untuk menampilkan tanggal dan waktu saat ini dengan fungsi NOW(). Query tersebut akan menghasilkan hasil yang berbeda-beda tergantung saat anda menjalankannya.
Perintah SELECT kebanyakan digunakan untuk proses pembacaan data dari database, tetapi juga dapat digunakan untuk menampilkan hasil dari fungsi tambahan, seperti fungsi NOW(), yang kita coba kali ini. Hasil query MySQL akan ditampilkan dalam bentuk tabel pada cmd windows, hasil ini dikirim dari MySQL Server.
Selain hasil dalam bentuk tabel, hampir setiap perintah query, MySQL juga akan menampilkan banyaknya baris yang dipengaruhi dan lamanya waktu eksekusi. Pada contoh kita diatas, ditampilkan keterangan: 1 row in set (0.00 sec). Keterangan ini berarti query kita diproses selama 0 detik (0 second), dan mempengaruhi 1 baris (1 row). o detik disini bukan berarti query tersebut akan tampil seketika, namun karena perintah yang sederhana, MySQL (mungkin) hanya membutuhkan waktu 0,001 sekian detik untuk memproses (dibulatkan menjadi 0,00).
Sebagai contoh query lainnya, kita akan mencoba untuk menampilkan nama user yang sedang aktif dan versi MySQL Server yang digunakan pada saat ini. Untuk menampilkan keterangan ini, MySQL menyediakan fungsi USER() dan VERSION()
mysql> SELECT NOW(),USER(),VERSION(); +---------------------+----------------+------------+ | NOW()Â Â Â Â Â Â Â Â Â Â Â Â Â Â | USER()Â Â Â Â Â Â Â Â | VERSION()Â | +---------------------+----------------+------------+ | 2014-11-13 09:21:37 | root@localhost | 5.6.21-log | +---------------------+----------------+------------+ 1 row in set (0.11 sec)
Dapat dilihat dari contoh query tersebut, untuk setiap fungsi dipisahkan dengan tanda koma ",".
Penulisan perintah (query) MySQL juga tidak harus dalam satu baris. Misalnya, kita bisa menjalankan query berikut:
mysql> SELECT NOW(), Â Â Â -> USER(), Â Â Â -> VERSION(); +---------------------+----------------+------------+ | NOW()Â Â Â Â Â Â Â Â Â Â Â Â Â Â | USER()Â Â Â Â Â Â Â Â | VERSION()Â | +---------------------+----------------+------------+ | 2014-11-13 09:22:50 | root@localhost | 5.6.21-log | +---------------------+----------------+------------+ 1 row in set (0.00 sec)
Setelah fungsi NOW() pertama, tekan Enter untuk pindah baris, lalu ketikkan perintah sambungannya. Selama kita belum mengakhiri perintah tersebut dengan ";", maka MySQL menganggap baris berikutnya adalah sambungan dari baris sebelumnya. Pemisahan perintah seperti diatas akan sangat berguna jika kita menuliskan query yang panjang, sehingga lebih mudah dibaca. Tanda mysql> akan berubah menjadi -> selama kita belum mengakhiri query tersebut dengan tanda titik koma ";".
Jika kita telah membuat query MySQL, namun memutuskan untuk membatalkannya, dapat dilakukan dengan kode "\c". Contoh querynya:
mysql> SELECT NOW(), -> USER(), -> \c mysql>
Dapat anda perhatikan bahwa tanda -> akan kembali menjadi mysql> yang menandakan MySQL telah siap untuk perintah yang baru.
Selain menggunakan ";", query MySQL juga akan mengeksekusi perintah juga diakhiri dengan tanda "\g".
mysql> SELECT NOW(),USER(),VERSION()\g +---------------------+----------------+------------+ | NOW()Â Â Â Â Â Â Â Â Â Â Â Â Â Â | USER()Â Â Â Â Â Â Â Â | VERSION()Â | +---------------------+----------------+------------+ | 2014-11-13 09:23:19 | root@localhost | 5.6.21-log | +---------------------+----------------+------------+ 1 row in set (0.00 sec)
Cara Merubah Tampilan output MySQL
Untuk perintah MySQL (query MySQL) yang menghasilkan output yang panjangnya melebihi layar cmd, akan sulit bagi kita dalam membacanya. MySQL menyediakan cara untuk merubah tampilan tabel menjadi baris.
Untuk merubah tampilan output MySQL menjadi baris, tambahkan tanda "\G" (huruf G besar, bukan g kecil) setelah perintah query. Berikut adalah contoh penggunaannya dalam MySQL:
mysql> SELECT NOW(),USER(),VERSION()\G *************************** 1. row *************************** Â Â Â NOW(): 2014-11-13 09:23:41 Â Â USER(): root@localhost VERSION(): 5.6.21-log 1 row in set (0.00 sec)
Aturan Penulisan huruf BESAR dan kecil dalam MySQL
Konsep penggunaan huruf besar dan huruf kecil dalam MySQL akan berbeda tergantung saat penggunaannya.
MySQL tidak membedakan penulisan huruf besar maupun kecil (case insensitive) dalam penulisan fungsi dan identifier. Sebagai contoh, ketiga query ini akan menghasilkan output yang sama (kecuali header dari tabel):
mysql> SELECT Version(); +------------+ | Version()Â | +------------+ | 5.6.21-log | +------------+ 1 row in set (0.00 sec) mysql> SELECT VERSION(); +------------+ | VERSION()Â | +------------+ | 5.6.21-log | +------------+ 1 row in set (0.00 sec) mysql> select version(); +------------+ | version()Â | +------------+ | 5.6.21-log | +------------+ 1 row in set (0.00 sec)
Namun untuk penulisan nama database dan nama tabel, MySQL akan mengikuti sistem operasi dimana MySQL Server berjalan.
Untuk Sistem Operasi Windows, nama database mahasiswa dianggap sama dengan MaHaSIsWA, namun dalam MySQL Server yang berjalan pada Linux, kedua database tersebut dianggap berbeda (case sensitive).
Karena hal ini, ada baiknya kita membiasakan menggunakan kesepakatan dalam penamaan. Disarankan untuk menggunakan selalu huruf kecil dalam penulisan database, tabel dan variabel dalam MySQL, sehingga perbedaan huruf tidak akan menjadi masalah pada kemudian hari jika MySQL Server pindah sistem operasi.
Di dalam tutorial duniailkom, dan juga dalam beberapa buku MySQL, perintah-perintah dan fungsi baku MySQL akan menggunakan HURUF BESAR sedangkan untuk nama database, tabel, dan kolom akan menggunakan huruf kecil. Hal ini hanya semata-mata agar perintah SQL mudah dibaca dan dibedakan dengan nama database atau tabel. Kita bisa saja menggunakan huruf kecil untuk seluruh fungsi-fungsi dalam MySQL.
Perhatikan penggunaan tanda
Dalam beberapa kasus, sebuah query bisa saja menggunakan tanda baca selain angka dan huruf seperti : "," (koma), "\" (forward slash/garis miring depan),"'" (tanda petik), dan " " (spasi). Misalnya untuk 123 dan '123', 12e + 14 dan 12e+14 akan memiliki arti berbeda dalam MySQL. Jika anda menemui error, mungkin penggunaan "tanda" ini adalah masalahnya. Lebih jauh dalam penggunaan tanda ini akan kita pelajari dalam tutorial-tutorial MySQL selanjutnya.
Setelah mempelajari cara penulisan dasar query MySQL pada tutorial kali ini, dalam tutorial selanjutnya kita akan belajar cara membuat database dalam MySQL , dalam halaman Tutorial Belajar MySQL: Cara Membuat dan Menghapus Database MySQL.
mantap
Terima kasih atas kunjungannya, semoga bisa bermanfaat…
bang, aku lg eksperimen penggunaan query setelah where…misalnya SELECT * FROM artikel WHERE id=4 (tambh query lagi misalnya update artikel set dibaca=dibaca+1)
tapi masih gak jadi-jadi. Ada tutorial / referensi gak yaaa…..mohon pencerahannya bang
Terus apdet bang
tutorial nya jelas padat dan kerenn !
Terima kasih atas dukungannya gan.. mudah-mudahan bisa bermanfaat :)
gan ane ijin copas yah untuk pembelajaran dan bantu share ilmu ini hehe
Silahkan gan.. tp dikasih sumber linknya ke sini ya.. :)
Saya install MySQL 5.6.2 kenapa saya tidak dapat menemukan file my.ini atau my.cnf ? padahal saya sudah install mengikuti sesuai petunjuk duniailkom
kalo mau bikin database itu gimana? mau coba-coba tapi takut salah langkah, makasihhh :D
Ikuti saja tutorial MySQL ini dari awal, saya sudah membuat lengkap langkah demi langkah cara menginstall dan menjalankan database MySQL :)
ga usah takut salah mas
kita kan belajar dari kesalahan :D
Thanks gan solusi ny, jd kesalahan saya d "Tanda" nya itu toh… hmmm
pntes eror" terus
Wah membantu sekali web nya gan ,,, keep posting :D
Terima Kasih atas sharingnya :D
gan nggak ada versi tutorial menjalankan mysql di linux ya?
Untuk saat ini belum ada gan, masih fokus ke platform windows. Tapi sarannya saya tampung ya..
saya uda instal tanggal 24-08-2014..kakak…..dan saya mengikuti cara duniailkom, padahal saya buat manual alias MySQL server dan clientnya uda bisa digunakan sendiri…….versionnya terbaru 5.6 26……
saya coba cara penulisan query berhasil……jadi bisa mengikuti artikel selanjutnya sebagai bahan belajar
baru kakak kenapa version yang terbaru filenya cuma di isi data…..dan my.ini aja yang lainnya kagak muncul apa ada yang salah instalan saya kakak…….?
tapi belajar penulisan querynya berhasil seperti contoh…mohon petunjuknya kalau ada salah atau tidak kakak…!
kakak habis instal bisa digunakan tapi habis di matikan laptopnya mau belajar tak bisa digunakan mysql servernya…!
dan mengikuti cara di atas mengaktifkan mysql server tak bisa2 karena msql bin nya tak ada…yang ada cuma data aja …version 5.6 .26 ..mohon petunjuknya…?
Wah, yang mana dulu mesti saya jawab nih..hehe…
Ditunggu y gan, soalnya saya belum download yang versi 5.6.26. Nanti saya coba install lagi untuk melihat perbedaannya dengan versi MySQL pada tutorial ini.
Update: sepertinya cuma salah folder instalasi nih, default MySQL berada di C:\Program Files, sedangkan di dalam tutorial duniailkom ini saya mengubah lokasinya ke D:\MySQL
Permisi… Numpang nanya,
Bagaimana cara mengganti pemisa "," hasil dari GROUP_CONCAT dengan tanda "-".
contoh "Budi, irham, sultan" menjadi "Budi-Irham-Sultan"
terimakasih…
Langsung lanjut kesini gan: Cara Menyambung String di dalam Query MySQL (CONCAT)
keren banget makasih ane , sangat terbantu dari pembelajaran disini jazakallah bang
Amiin… makasih gan..
bang, abang nerbitin buku? mantap gan, sangat mendetail, saya yang masih sangat pemula jadi kebantu belajar sama abang. makasih ya bang.
Terimakasih gan.. :)
Iya, saat ini sudah tersedia buku HTML dan CSS. Untuk materi lain seperti PHP dan MySQL akan segera menyusul…
penyusun dan penerbitnya siapa bang? :)
Bukan buku cetak gan, tapi eBook: HTML Uncover dan CSS Uncover.
Bikin sendiri n edit sendiri, belum mengajukan ke penerbit. Kalau boleh dibilang masih indie, tapi kualitasnya g kalah sama buku di gramedia..hehe
oke bang, makasih ya bang, saya tunggu buat mySQL hehee
Hehe.. siap gan.. :D
Ini web recommended bgt …trrus berkarya gan
terimakasih kakak
Gan makasi ya tutorialnya, ane ijin jadiin bahan referensi di blog ane. blog ane lebih ke java programming, tapi butuh tutorial mysqlnya.
Silahkan… mohon di sertakan link sumbernya kemari ya…
Mas maaf mengganggu. Ingin bertanya, saya pake mysql versi 5.7, dan ketika proses instalasi ada beberapa tahapan yg berbeda dengan yg ditutorkan oleh mas. Tapi setelah sy ketikkan pass bisa mas, apa itu artinya sukses ya mas? Pas saya mau coba tutor mas mengenai Mysql server saya coba cari folder bin gak ada mas, gimana ya Mas?
Dan satu lagi mas, jadi untuk selanjutnya sy ngoding di mysql command line apa cmd ya mas? Terima kasih mas.
Note: sebelumnya sy juga menginstall XAMPP, awalnya sukses. Lalu gak berapa lama error.
Saya belum coba install MySQL terbaru, tapi kalau sudah berhasil masuk ke tampilan MySQL client, berarti g ada masalah…
Coding di MySQL Command Line maupun cmd sama saja kok, boleh pakai yang mana saja.
gan saya minta contoh insert 3 tabel yang mengambil dari tabel lain dong.
Untuk menginput data dari tabel lain, contoh querynya seperti ini:
INSERT INTO tabel1 (b,c) SELECT b,c FROM tabel2;
Jika pengen diinput ke 3 tabel, tinggal diulang saja perintah diatas sebanyak 3 kali.
itu kan di akhir querynya bisa pake " ; " atau " \g "
nah perbedaannya apa?
Bedanya hanya di tampilan saja, kalau pakai "\g" akan ditampilkan dalam bentuk baris memanjang ke bawah (bukan berbentuk tabel)
Keren nich tutorial …. Jadi tambah paham
Assalamu'alaikum bang, bisa minta filenya ??
[email protected]
Waalaikumsalam…maksudnya file apa ya?
saya boleh minta ebook berbentuk pdf untuk saya pelajari jika saya tak terhubung dengan internet, maklumlah bang kalau makai internet hanya bias dikampus heheh
ini email saya bang
[email protected]
Mohon maaf banget nih.. jika yang dimaksud adalah eBook MySQL Uncover, itu adalah eBook berbayar karena saya perlu waktu lama untuk proses penulisan dan penyusunan materi.
Untuk yang gratis, boleh baca2 tutorial yang ada di web ini saja ya… karena duniailkom juga perlu pendapatan dari iklan untuk menutupi biaya server dan maintenance.
dasar modal gratisan lu
Terima kasih banyak ya, saya lagi belajar MySQL dapat banyak ilmu, mulai dari instalasi yang lengkap, dan juga materi yang utama-nya. Berbagi ilmu, insya allah pahalanya akan mengalir terus. Semoga sehat selalu dan semoga bisa berbagi ilmu terus.
Sangat bermanfaat. Sangat mudah diikuti. Semoga menjadi amal baik aamiin. Terimakasih