Buat struktur tabel menggunakan perintah mysql

Pada tutorial kali ini kita akan membahas bagaimana cara menampilkan data dari tabel MySQL dengan query SELECT. Perintah SELECT akan dibahas lengkap dengan opsi query WHERE, ORDER BY, dan LIMIT

Menampilkan data dari sebuah tabel adalah hal yang paling umum kita lakukan ketika berhadapan dengan database. Pembuatan tabel MySQL hanya perlu dilakukan satu kali pada awal implementasi, namun penginputan data (INSERT) dan menampilkannya kembali (SELECT) dalam format yang diinginkan merupakan rutinitas selama database masih digunakan


Mempersiapkan Tabel Contoh. mata kuliah_mata kuliah dan daftar_dosen

Karena pembahasan query SELECT banyak variasinya sehingga memiliki banyak fitur, pada tutorial kali ini saya akan membuat 2 tabel dengan nama subject_course dan list_of dosen. Tabel ini juga akan digunakan untuk beberapa tutorial selanjutnya

Berikut adalah query yang digunakan untuk mendesain tabel subject_course dan lecture_list

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mahasiswa          |
| mysql              |
| performance_schema |
| test               |
+--------------------+
5 rows in set (0.13 sec)

mysql> USE mahasiswa;
Database changed

mysql> CREATE TABLE daftar_dosen (NIP CHAR(10) PRIMARY KEY,
nama_dosen VARCHAR(50) NOT NULL, no_hp CHAR(13),
alamat VARCHAR(100));
Query OK, 0 rows affected (0.10 sec)

mysql> DESC daftar_dosen;
+------------+--------------+------+-----+---------+-------+
| Field      | Type         | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+-------+
| NIP        | char(10)     | NO   | PRI | NULL    |       |
| nama_dosen | varchar(50)  | NO   |     | NULL    |       |
| no_hp      | char(13)     | YES  |     | NULL    |       |
| alamat     | varchar(100) | YES  |     | NULL    |       |
+------------+--------------+------+-----+---------+-------+
4 rows in set (0.08 sec)

mysql> CREATE TABLE mata_kuliah (kode_matkul CHAR(6) PRIMARY KEY,
nama_matkul VARCHAR(50) NOT NULL,
jumlah_SKS TINYINT UNSIGNED DEFAULT '2',
semester TINYINT,NIP_dosen CHAR(10));
Query OK, 0 rows affected (0.04 sec)

mysql> DESC mata_kuliah;
+-------------+---------------------+------+-----+---------+-------+
| Field       | Type                | Null | Key | Default | Extra |
+-------------+---------------------+------+-----+---------+-------+
| kode_matkul | char(6)             | NO   | PRI | NULL    |       |
| nama_matkul | varchar(50)         | NO   |     | NULL    |       |
| jumlah_SKS  | tinyint(3) unsigned | YES  |     | 2       |       |
| semester    | tinyint(4)          | YES  |     | NULL    |       |
| NIP_dosen   | char(10)            | YES  |     | NULL    |       |
+-------------+---------------------+------+-----+---------+-------+
5 rows in set (0.00 sec)

Selanjutnya adalah mengisi tabel dengan data sampel. Dalam contoh ini, saya menggunakan data sampel seperti yang ditunjukkan pada tabel di bawah ini

Masukkan data untuk tabel dosen_list

NIPNama DosenNo HPAlamat0160436012Sabrina Sari0812349900Pekanbaru0260432002Maya Ari Putri0812345234Palembang0275430005Susi Indriani0812656532Bogor0480432066Tia Santrini0812451177Padang0576431001M. Siddiq0812979005Jakarta0770435006Rubin Hadi0812567678Papua0869437003Mustalifah0812338877Aceh1080432007Arif Budiman0812456345Makasar

Masukkan data untuk tabel mata_kuliah

Kode Mata KuliahNama MatakuliahJumlah SKSSemesterNip DosenMATDASMatematika Dasar410160436012FISDASFisika Dasar210480432066TEKKOMTeknik Kompilasi260480432066JARKOMJaringan Komputer330770435006DTBASEDatabase440275430005SISOPRSistem Operasi240160436012MIKROPMikro Prosesor250480432066

Anda dapat memasukkannya satu per satu dengan perintah INSERT seperti yang telah kita pelajari di Tutorial Cara Menambahkan data ke Tabel dengan kueri INSERT

Selain itu, saya juga menyediakan file teks untuk diinput melalui query LOAD DATA INFILE, seperti pada Tutorial Menambahkan data dari File (LOAD DATA INFILE), file teks dapat diambil dari link berikut. contoh tabel data dosen_daftar dan mata kuliah_mata kuliah

Khusus untuk yang mencoba input data melalui perintah LOAD DATA INFILE, berikut query yang dibutuhkan (saya asumsikan anda memasukkan file mata_kuliah. txt dan daftar_dosen. txt di folder D. \MySQL )

mysql> LOAD DATA INFILE 'D:\\MySQL\\daftar_dosen.txt'
INTO TABLE daftar_dosen
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 8 rows affected (0.06 sec)
Records: 8  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM daftar_dosen;
+------------+----------------+------------+-----------+
| NIP        | nama_dosen     | no_hp      | alamat    |
+------------+----------------+------------+-----------+
| 0160436012 | Sabrina Sari   | 0812349900 | Pekanbaru |
| 0260432002 | Maya Ari Putri | 0812345234 | Palembang |
| 0275430005 | Susi Indriani  | 0812656532 | Bogor     |
| 0480432066 | Tia Santrini   | 0812451177 | Padang    |
| 0576431001 | M. Siddiq      | 0812979005 | Jakarta   |
| 0770435006 | Rubin Hadi     | 0812567678 | Papua     |
| 0869437003 | Mustalifah     | 0812338877 | Aceh      |
| 1080432007 | Arif Budiman   | 0812456345 | Makasar   |
+------------+----------------+------------+-----------+
8 rows in set (0.00 sec)

mysql> LOAD DATA INFILE 'D:\\MySQL\\mata_kuliah.txt'
INTO TABLE mata_kuliah
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 7 rows affected (0.04 sec)
Records: 7  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM mata_kuliah;
+-------------+-------------------+------------+----------+------------+
| kode_matkul | nama_matkul       | jumlah_SKS | semester | NIP_dosen  |
+-------------+-------------------+------------+----------+------------+
| DTBASE      | Database          |          4 |        4 | 0275430005 |
| FISDAS      | Fisika Dasar      |          2 |        1 | 0480432066 |
| JARKOM      | Jaringan Komputer |          3 |        3 | 0770435006 |
| MATDAS      | Matematika Dasar  |          4 |        1 | 0160436012 |
| MIKROP      | Mikro Prosesor    |          2 |        5 | 0480432066 |
| SISOPR      | Sistem Operasi    |          2 |        4 | 0160436012 |
| TEKKOM      | Teknik Kompilasi  |          2 |        6 | 0480432066 |
+-------------+-------------------+------------+----------+------------+
7 rows in set (0.00 sec)
_

Dengan seluruh tabel contoh dan isinya selesai, kami siap menampilkan data dari tabel dengan kueri MySQL SELECT


Format dasar penulisan kueri SELECT

Saat kita ingin menampilkan data, biasanya kita membutuhkan 3 hal

  • Setiap kolom yang ingin Anda tampilkan
  • Nama tabel yang akan ditampilkan
  • Kondisi untuk menampilkan data

Query SELECT pada dasarnya juga terdiri dari 3 hal tersebut. Berikut ini adalah format dasar penulisan query MySQL SELECT

SELECT apa_yang_akan_ditampilkan FROM tabel_apa
WHERE kondisi_apa_data_ditampilkan;

Ketiga faktor tersebut akan kita bahas pada tutorial kali ini, dan karena kebutuhan untuk menampilkan data sangat beragam, MySQL memiliki banyak pilihan yang bisa digunakan, berikut format query dasar SELECT yang saya ambil dari manual MySQL

SELECT
   [ALL | DISTINCT | DISTINCTROW ]
      [HIGH_PRIORITY]
      [STRAIGHT_JOIN]
      [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT]
      [SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS]
   select_expr [, select_expr ...]
   [FROM table_references
   [WHERE where_condition]
   [GROUP BY {col_name | expr | position}
      [ASC | DESC], .. [WITH ROLLUP]]
   [HAVING where_condition]
   [ORDER BY {col_name | expr | position}
      [ASC | DESC], ...]
   [LIMIT {[offset,] row_count | row_count OFFSET offset}]
   [PROCEDURE procedure_name(argument_list)]
   [INTO OUTFILE 'file_name'
      [CHARACTER SET charset_name]
      export_options
      | INTO DUMPFILE 'file_name'
      | INTO var_name [, var_name]]
   [FOR UPDATE | LOCK IN SHARE MODE]]

Seperti yang Anda lihat, MySQL menyediakan banyak perintah opsional yang dapat dipilih untuk membantu kami menampilkan data dari database

Kami tidak membutuhkan sebagian besar dari mereka, tetapi setidaknya MySQL menyediakan banyak opsi untuk menampilkan hasil kueri SELECT. Kami akan membahas beberapa di antaranya


Cara Menampilkan Seluruh Isi Tabel MySQL

Mungkin ini adalah kueri SELECT yang paling mudah diingat dan paling populer, yaitu cara menampilkan semua data dari sebuah tabel

Format dasar pemilihan kueri untuk menampilkan seluruh isi tabel adalah sebagai berikut

SELECT * FROM nama_tabel
_

Tanda bintang (*) adalah karakter pengganti 'pilih semua kolom'

Sebagai contoh, berikut adalah query untuk menampilkan seluruh isi tabel daftar_dosen

mysql> SELECT * FROM daftar_dosen;
+------------+----------------+------------+-----------+
| NIP        | nama_dosen     | no_hp      | alamat    |
+------------+----------------+------------+-----------+
| 0160436012 | Sabrina Sari   | 0812349900 | Pekanbaru |
| 0260432002 | Maya Ari Putri | 0812345234 | Palembang |
| 0275430005 | Susi Indriani  | 0812656532 | Bogor     |
| 0480432066 | Tia Santrini   | 0812451177 | Padang    |
| 0576431001 | M. Siddiq      | 0812979005 | Jakarta   |
| 0770435006 | Rubin Hadi     | 0812567678 | Papua     |
| 0869437003 | Mustalifah     | 0812338877 | Aceh      |
| 1080432007 | Arif Budiman   | 0812456345 | Makasar   |
+------------+----------------+------------+-----------+
8 rows in set (0.00 sec)

Cara Menampilkan Kolom Tertentu dari Tabel MySQL (PILIH .. DARI)

Jika Anda ingin menampilkan hanya beberapa kolom dari tabel, Anda dapat menentukan kolom mana yang akan ditampilkan

Format dasarnya adalah sebagai berikut

SELECT nama_kolom1, nama_kolom2,.. FROM nama_tabel
_

nama_kolom1 dan nama_kolom2 adalah nama kolom yang akan ditampilkan. Misalnya kita ingin menampilkan kolom dosen_nama dan alamat dari tabel dosen_list, maka querynya adalah sebagai berikut

mysql> SELECT nama_dosen, alamat FROM daftar_dosen;
+----------------+-----------+
| nama_dosen     | alamat    |
+----------------+-----------+
| Sabrina Sari   | Pekanbaru |
| Maya Ari Putri | Palembang |
| Susi Indriani  | Bogor     |
| Tia Santrini   | Padang    |
| M. Siddiq      | Jakarta   |
| Rubin Hadi     | Papua     |
| Mustalifah     | Aceh      |
| Arif Budiman   | Makasar   |
+----------------+-----------+
8 rows in set (0.05 sec)


Cara Menyaring/Memilih data dari Tabel MySQL (SELECT...WHERE...)

Jika kita ingin menampilkan data yang memenuhi kriteria tertentu saja, dapat dilakukan dengan menambahkan perintah WHERE pada query SELECT

Kondisi WHERE pada perintah SELECT digunakan untuk memilih data yang diinginkan saja, sedangkan data yang tidak memenuhi kriteria tidak akan ditampilkan

Format dasar kueri SELECT…WHERE adalah

SELECT nama_kolom1, nama_kolom2,.. FROM nama_tabel WHERE kondisi
_

Misalnya untuk menampilkan data dosen yang alamatnya di Padang, Anda bisa menggunakan query berikut

mysql> SELECT NIP,nama_dosen FROM daftar_dosen WHERE alamat='Padang';
+------------+--------------+
| NIP        | nama_dosen   |
+------------+--------------+
| 0480432066 | Tia Santrini |
+------------+--------------+
1 row in set (0.00 sec)
_

Kondisi WHERE sangat fleksibel dan kita bisa menggunakan berbagai operasi kondisi seperti lebih besar (>), lebih kecil (<), tidak sama (<>), dan lain-lain.

Daftar lengkap penggunaan kondisi yang dapat digunakan di SELECT...WHERE is

Operasi Aritmatika

Penjelasan Operator+Penjumlahan–Pengurangan*Pengurangan/Pembagian % Sisa hasil bagi (modulus)

Operasi Logis

OperatorExplanationNOT atau. Logika bukanlah DAN atau && Logika danATAU atau. Logika atauXORLogika bukan atau (XOR)

Operasi Perbandingan

OperatorPenjelasan=Sama dengan<> atau !=Tidak sama dengan<=>sama dengan (null safe)lebih besar dari>=lebih besar atau sama denganBETWEENBerada pada batas tertentuINBerada di dalamIS NULLPengecekan apakah berisi NULLIS NOT NULLPengecekan apakah bukan berisi NULLLIKEPencarian menggunakan wildcardREGEXP atau RLIKEPencarian menggunakan Regular Expression

Misalnya ingin menampilkan semua mata pelajaran yang diajarkan pada semester 4 ke atas, maka querynya adalah

mysql> LOAD DATA INFILE 'D:\\MySQL\\daftar_dosen.txt'
INTO TABLE daftar_dosen
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 8 rows affected (0.06 sec)
Records: 8  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM daftar_dosen;
+------------+----------------+------------+-----------+
| NIP        | nama_dosen     | no_hp      | alamat    |
+------------+----------------+------------+-----------+
| 0160436012 | Sabrina Sari   | 0812349900 | Pekanbaru |
| 0260432002 | Maya Ari Putri | 0812345234 | Palembang |
| 0275430005 | Susi Indriani  | 0812656532 | Bogor     |
| 0480432066 | Tia Santrini   | 0812451177 | Padang    |
| 0576431001 | M. Siddiq      | 0812979005 | Jakarta   |
| 0770435006 | Rubin Hadi     | 0812567678 | Papua     |
| 0869437003 | Mustalifah     | 0812338877 | Aceh      |
| 1080432007 | Arif Budiman   | 0812456345 | Makasar   |
+------------+----------------+------------+-----------+
8 rows in set (0.00 sec)

mysql> LOAD DATA INFILE 'D:\\MySQL\\mata_kuliah.txt'
INTO TABLE mata_kuliah
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 7 rows affected (0.04 sec)
Records: 7  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM mata_kuliah;
+-------------+-------------------+------------+----------+------------+
| kode_matkul | nama_matkul       | jumlah_SKS | semester | NIP_dosen  |
+-------------+-------------------+------------+----------+------------+
| DTBASE      | Database          |          4 |        4 | 0275430005 |
| FISDAS      | Fisika Dasar      |          2 |        1 | 0480432066 |
| JARKOM      | Jaringan Komputer |          3 |        3 | 0770435006 |
| MATDAS      | Matematika Dasar  |          4 |        1 | 0160436012 |
| MIKROP      | Mikro Prosesor    |          2 |        5 | 0480432066 |
| SISOPR      | Sistem Operasi    |          2 |        4 | 0160436012 |
| TEKKOM      | Teknik Kompilasi  |          2 |        6 | 0480432066 |
+-------------+-------------------+------------+----------+------------+
7 rows in set (0.00 sec)
_0

Menggabungkan beberapa syarat juga bisa dilakukan, misalnya jika ingin menampilkan semua mata pelajaran dengan jumlah SKS=2 dan diajarkan pada semester di bawah 5, maka query

mysql> LOAD DATA INFILE 'D:\\MySQL\\daftar_dosen.txt'
INTO TABLE daftar_dosen
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 8 rows affected (0.06 sec)
Records: 8  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM daftar_dosen;
+------------+----------------+------------+-----------+
| NIP        | nama_dosen     | no_hp      | alamat    |
+------------+----------------+------------+-----------+
| 0160436012 | Sabrina Sari   | 0812349900 | Pekanbaru |
| 0260432002 | Maya Ari Putri | 0812345234 | Palembang |
| 0275430005 | Susi Indriani  | 0812656532 | Bogor     |
| 0480432066 | Tia Santrini   | 0812451177 | Padang    |
| 0576431001 | M. Siddiq      | 0812979005 | Jakarta   |
| 0770435006 | Rubin Hadi     | 0812567678 | Papua     |
| 0869437003 | Mustalifah     | 0812338877 | Aceh      |
| 1080432007 | Arif Budiman   | 0812456345 | Makasar   |
+------------+----------------+------------+-----------+
8 rows in set (0.00 sec)

mysql> LOAD DATA INFILE 'D:\\MySQL\\mata_kuliah.txt'
INTO TABLE mata_kuliah
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 7 rows affected (0.04 sec)
Records: 7  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM mata_kuliah;
+-------------+-------------------+------------+----------+------------+
| kode_matkul | nama_matkul       | jumlah_SKS | semester | NIP_dosen  |
+-------------+-------------------+------------+----------+------------+
| DTBASE      | Database          |          4 |        4 | 0275430005 |
| FISDAS      | Fisika Dasar      |          2 |        1 | 0480432066 |
| JARKOM      | Jaringan Komputer |          3 |        3 | 0770435006 |
| MATDAS      | Matematika Dasar  |          4 |        1 | 0160436012 |
| MIKROP      | Mikro Prosesor    |          2 |        5 | 0480432066 |
| SISOPR      | Sistem Operasi    |          2 |        4 | 0160436012 |
| TEKKOM      | Teknik Kompilasi  |          2 |        6 | 0480432066 |
+-------------+-------------------+------------+----------+------------+
7 rows in set (0.00 sec)
_1


Cara Mengurutkan hasil tampilan data MySQL (SELECT...ORDER BY)

MySQL menyediakan perintah opsional ORDER BY untuk mengurutkan data yang dihasilkan. Kueri dasar untuk SELECT...ORDER BY adalah

mysql> LOAD DATA INFILE 'D:\\MySQL\\daftar_dosen.txt'
INTO TABLE daftar_dosen
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 8 rows affected (0.06 sec)
Records: 8  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM daftar_dosen;
+------------+----------------+------------+-----------+
| NIP        | nama_dosen     | no_hp      | alamat    |
+------------+----------------+------------+-----------+
| 0160436012 | Sabrina Sari   | 0812349900 | Pekanbaru |
| 0260432002 | Maya Ari Putri | 0812345234 | Palembang |
| 0275430005 | Susi Indriani  | 0812656532 | Bogor     |
| 0480432066 | Tia Santrini   | 0812451177 | Padang    |
| 0576431001 | M. Siddiq      | 0812979005 | Jakarta   |
| 0770435006 | Rubin Hadi     | 0812567678 | Papua     |
| 0869437003 | Mustalifah     | 0812338877 | Aceh      |
| 1080432007 | Arif Budiman   | 0812456345 | Makasar   |
+------------+----------------+------------+-----------+
8 rows in set (0.00 sec)

mysql> LOAD DATA INFILE 'D:\\MySQL\\mata_kuliah.txt'
INTO TABLE mata_kuliah
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 7 rows affected (0.04 sec)
Records: 7  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM mata_kuliah;
+-------------+-------------------+------------+----------+------------+
| kode_matkul | nama_matkul       | jumlah_SKS | semester | NIP_dosen  |
+-------------+-------------------+------------+----------+------------+
| DTBASE      | Database          |          4 |        4 | 0275430005 |
| FISDAS      | Fisika Dasar      |          2 |        1 | 0480432066 |
| JARKOM      | Jaringan Komputer |          3 |        3 | 0770435006 |
| MATDAS      | Matematika Dasar  |          4 |        1 | 0160436012 |
| MIKROP      | Mikro Prosesor    |          2 |        5 | 0480432066 |
| SISOPR      | Sistem Operasi    |          2 |        4 | 0160436012 |
| TEKKOM      | Teknik Kompilasi  |          2 |        6 | 0480432066 |
+-------------+-------------------+------------+----------+------------+
7 rows in set (0.00 sec)
_2

nama_kolom_urut adalah kolom yang akan kita sortir. Pengurutan bisa dari terkecil ke terbesar, atau terbesar ke terkecil

Pilihan ini dapat diatur dengan menambahkan instruksi ASC (singkatan dari Ascending) untuk pengurutan dari kecil ke besar, dan DESC (singkatan dari Descending) untuk pengurutan dari besar ke kecil. Jika tidak dijelaskan, secara default perintah MySQL ORDER BY akan menggunakan ASC

Misalnya kita ingin menampilkan mata pelajaran yang lebih dari 2 SKS diurutkan dari yang terkecil maka querynya adalah

mysql> LOAD DATA INFILE 'D:\\MySQL\\daftar_dosen.txt'
INTO TABLE daftar_dosen
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 8 rows affected (0.06 sec)
Records: 8  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM daftar_dosen;
+------------+----------------+------------+-----------+
| NIP        | nama_dosen     | no_hp      | alamat    |
+------------+----------------+------------+-----------+
| 0160436012 | Sabrina Sari   | 0812349900 | Pekanbaru |
| 0260432002 | Maya Ari Putri | 0812345234 | Palembang |
| 0275430005 | Susi Indriani  | 0812656532 | Bogor     |
| 0480432066 | Tia Santrini   | 0812451177 | Padang    |
| 0576431001 | M. Siddiq      | 0812979005 | Jakarta   |
| 0770435006 | Rubin Hadi     | 0812567678 | Papua     |
| 0869437003 | Mustalifah     | 0812338877 | Aceh      |
| 1080432007 | Arif Budiman   | 0812456345 | Makasar   |
+------------+----------------+------------+-----------+
8 rows in set (0.00 sec)

mysql> LOAD DATA INFILE 'D:\\MySQL\\mata_kuliah.txt'
INTO TABLE mata_kuliah
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 7 rows affected (0.04 sec)
Records: 7  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM mata_kuliah;
+-------------+-------------------+------------+----------+------------+
| kode_matkul | nama_matkul       | jumlah_SKS | semester | NIP_dosen  |
+-------------+-------------------+------------+----------+------------+
| DTBASE      | Database          |          4 |        4 | 0275430005 |
| FISDAS      | Fisika Dasar      |          2 |        1 | 0480432066 |
| JARKOM      | Jaringan Komputer |          3 |        3 | 0770435006 |
| MATDAS      | Matematika Dasar  |          4 |        1 | 0160436012 |
| MIKROP      | Mikro Prosesor    |          2 |        5 | 0480432066 |
| SISOPR      | Sistem Operasi    |          2 |        4 | 0160436012 |
| TEKKOM      | Teknik Kompilasi  |          2 |        6 | 0480432066 |
+-------------+-------------------+------------+----------+------------+
7 rows in set (0.00 sec)
_3

Jika kita ingin menampilkan semua dosen pada tabel daftar_dosen dan mengurutkan kolom alamat berdasarkan abjad, maka querynya adalah sebagai berikut

mysql> LOAD DATA INFILE 'D:\\MySQL\\daftar_dosen.txt'
INTO TABLE daftar_dosen
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 8 rows affected (0.06 sec)
Records: 8  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM daftar_dosen;
+------------+----------------+------------+-----------+
| NIP        | nama_dosen     | no_hp      | alamat    |
+------------+----------------+------------+-----------+
| 0160436012 | Sabrina Sari   | 0812349900 | Pekanbaru |
| 0260432002 | Maya Ari Putri | 0812345234 | Palembang |
| 0275430005 | Susi Indriani  | 0812656532 | Bogor     |
| 0480432066 | Tia Santrini   | 0812451177 | Padang    |
| 0576431001 | M. Siddiq      | 0812979005 | Jakarta   |
| 0770435006 | Rubin Hadi     | 0812567678 | Papua     |
| 0869437003 | Mustalifah     | 0812338877 | Aceh      |
| 1080432007 | Arif Budiman   | 0812456345 | Makasar   |
+------------+----------------+------------+-----------+
8 rows in set (0.00 sec)

mysql> LOAD DATA INFILE 'D:\\MySQL\\mata_kuliah.txt'
INTO TABLE mata_kuliah
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 7 rows affected (0.04 sec)
Records: 7  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM mata_kuliah;
+-------------+-------------------+------------+----------+------------+
| kode_matkul | nama_matkul       | jumlah_SKS | semester | NIP_dosen  |
+-------------+-------------------+------------+----------+------------+
| DTBASE      | Database          |          4 |        4 | 0275430005 |
| FISDAS      | Fisika Dasar      |          2 |        1 | 0480432066 |
| JARKOM      | Jaringan Komputer |          3 |        3 | 0770435006 |
| MATDAS      | Matematika Dasar  |          4 |        1 | 0160436012 |
| MIKROP      | Mikro Prosesor    |          2 |        5 | 0480432066 |
| SISOPR      | Sistem Operasi    |          2 |        4 | 0160436012 |
| TEKKOM      | Teknik Kompilasi  |          2 |        6 | 0480432066 |
+-------------+-------------------+------------+----------+------------+
7 rows in set (0.00 sec)
_4


Cara Membatasi Hasil Query SELECT (SELECT...LIMIT)

MySQL menyediakan opsi LIMIT opsional untuk membatasi hasil kueri SELECT. Format dasar kueri SELECT...LIMIT adalah sebagai berikut

mysql> LOAD DATA INFILE 'D:\\MySQL\\daftar_dosen.txt'
INTO TABLE daftar_dosen
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 8 rows affected (0.06 sec)
Records: 8  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM daftar_dosen;
+------------+----------------+------------+-----------+
| NIP        | nama_dosen     | no_hp      | alamat    |
+------------+----------------+------------+-----------+
| 0160436012 | Sabrina Sari   | 0812349900 | Pekanbaru |
| 0260432002 | Maya Ari Putri | 0812345234 | Palembang |
| 0275430005 | Susi Indriani  | 0812656532 | Bogor     |
| 0480432066 | Tia Santrini   | 0812451177 | Padang    |
| 0576431001 | M. Siddiq      | 0812979005 | Jakarta   |
| 0770435006 | Rubin Hadi     | 0812567678 | Papua     |
| 0869437003 | Mustalifah     | 0812338877 | Aceh      |
| 1080432007 | Arif Budiman   | 0812456345 | Makasar   |
+------------+----------------+------------+-----------+
8 rows in set (0.00 sec)

mysql> LOAD DATA INFILE 'D:\\MySQL\\mata_kuliah.txt'
INTO TABLE mata_kuliah
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 7 rows affected (0.04 sec)
Records: 7  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM mata_kuliah;
+-------------+-------------------+------------+----------+------------+
| kode_matkul | nama_matkul       | jumlah_SKS | semester | NIP_dosen  |
+-------------+-------------------+------------+----------+------------+
| DTBASE      | Database          |          4 |        4 | 0275430005 |
| FISDAS      | Fisika Dasar      |          2 |        1 | 0480432066 |
| JARKOM      | Jaringan Komputer |          3 |        3 | 0770435006 |
| MATDAS      | Matematika Dasar  |          4 |        1 | 0160436012 |
| MIKROP      | Mikro Prosesor    |          2 |        5 | 0480432066 |
| SISOPR      | Sistem Operasi    |          2 |        4 | 0160436012 |
| TEKKOM      | Teknik Kompilasi  |          2 |        6 | 0480432066 |
+-------------+-------------------+------------+----------+------------+
7 rows in set (0.00 sec)
_5

Di mana row_start adalah awal dari nomor baris yang akan ditampilkan, dan row_sum adalah jumlah baris yang diurutkan dari row_start. Nomor baris di MySQL dimulai dengan angka 0

Misalkan kita ingin menampilkan data nama dosen 3 besar yang diurutkan berdasarkan nama, maka querynya adalah

mysql> LOAD DATA INFILE 'D:\\MySQL\\daftar_dosen.txt'
INTO TABLE daftar_dosen
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 8 rows affected (0.06 sec)
Records: 8  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM daftar_dosen;
+------------+----------------+------------+-----------+
| NIP        | nama_dosen     | no_hp      | alamat    |
+------------+----------------+------------+-----------+
| 0160436012 | Sabrina Sari   | 0812349900 | Pekanbaru |
| 0260432002 | Maya Ari Putri | 0812345234 | Palembang |
| 0275430005 | Susi Indriani  | 0812656532 | Bogor     |
| 0480432066 | Tia Santrini   | 0812451177 | Padang    |
| 0576431001 | M. Siddiq      | 0812979005 | Jakarta   |
| 0770435006 | Rubin Hadi     | 0812567678 | Papua     |
| 0869437003 | Mustalifah     | 0812338877 | Aceh      |
| 1080432007 | Arif Budiman   | 0812456345 | Makasar   |
+------------+----------------+------------+-----------+
8 rows in set (0.00 sec)

mysql> LOAD DATA INFILE 'D:\\MySQL\\mata_kuliah.txt'
INTO TABLE mata_kuliah
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 7 rows affected (0.04 sec)
Records: 7  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM mata_kuliah;
+-------------+-------------------+------------+----------+------------+
| kode_matkul | nama_matkul       | jumlah_SKS | semester | NIP_dosen  |
+-------------+-------------------+------------+----------+------------+
| DTBASE      | Database          |          4 |        4 | 0275430005 |
| FISDAS      | Fisika Dasar      |          2 |        1 | 0480432066 |
| JARKOM      | Jaringan Komputer |          3 |        3 | 0770435006 |
| MATDAS      | Matematika Dasar  |          4 |        1 | 0160436012 |
| MIKROP      | Mikro Prosesor    |          2 |        5 | 0480432066 |
| SISOPR      | Sistem Operasi    |          2 |        4 | 0160436012 |
| TEKKOM      | Teknik Kompilasi  |          2 |        6 | 0480432066 |
+-------------+-------------------+------------+----------+------------+
7 rows in set (0.00 sec)
_6

Jika kita hanya menuliskan 1 angka di belakang instruksi LIMIT, maka MySQL menganggap bahwa angka tersebut dihitung dari baris paling atas (baris ke 0). Misalnya jika kita ingin menampilkan 5 baris subjek teratas yang diurutkan berdasarkan nama, maka kueri

mysql> LOAD DATA INFILE 'D:\\MySQL\\daftar_dosen.txt'
INTO TABLE daftar_dosen
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 8 rows affected (0.06 sec)
Records: 8  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM daftar_dosen;
+------------+----------------+------------+-----------+
| NIP        | nama_dosen     | no_hp      | alamat    |
+------------+----------------+------------+-----------+
| 0160436012 | Sabrina Sari   | 0812349900 | Pekanbaru |
| 0260432002 | Maya Ari Putri | 0812345234 | Palembang |
| 0275430005 | Susi Indriani  | 0812656532 | Bogor     |
| 0480432066 | Tia Santrini   | 0812451177 | Padang    |
| 0576431001 | M. Siddiq      | 0812979005 | Jakarta   |
| 0770435006 | Rubin Hadi     | 0812567678 | Papua     |
| 0869437003 | Mustalifah     | 0812338877 | Aceh      |
| 1080432007 | Arif Budiman   | 0812456345 | Makasar   |
+------------+----------------+------------+-----------+
8 rows in set (0.00 sec)

mysql> LOAD DATA INFILE 'D:\\MySQL\\mata_kuliah.txt'
INTO TABLE mata_kuliah
FIELDS TERMINATED BY ','  LINES TERMINATED BY '\r\n';
Query OK, 7 rows affected (0.04 sec)
Records: 7  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM mata_kuliah;
+-------------+-------------------+------------+----------+------------+
| kode_matkul | nama_matkul       | jumlah_SKS | semester | NIP_dosen  |
+-------------+-------------------+------------+----------+------------+
| DTBASE      | Database          |          4 |        4 | 0275430005 |
| FISDAS      | Fisika Dasar      |          2 |        1 | 0480432066 |
| JARKOM      | Jaringan Komputer |          3 |        3 | 0770435006 |
| MATDAS      | Matematika Dasar  |          4 |        1 | 0160436012 |
| MIKROP      | Mikro Prosesor    |          2 |        5 | 0480432066 |
| SISOPR      | Sistem Operasi    |          2 |        4 | 0160436012 |
| TEKKOM      | Teknik Kompilasi  |          2 |        6 | 0480432066 |
+-------------+-------------------+------------+----------+------------+
7 rows in set (0.00 sec)
_7


Dalam Tutorial MySQL cara menampilkan data dari tabel ini, kita telah membahas kueri SELECT dasar

Query SELECT masih memiliki banyak perintah lain yang digunakan untuk mendapatkan hasil yang lebih spesifik. Kami akan membahasnya di tutorial MySQL lainnya

Bagaimana cara membuat tabel di MySQL?

Berikut adalah perintah yang digunakan untuk membuat a tabel di mysql . BUAT TABLE name_table(name_field_type_data(width_column), name_field_type_data(width_column), PRIMARY KEY (name_field_key) );

Apa itu perintah MySQL?

Nah, berikut adalah 7 perintah dasar MySQL yang perlu Anda ketahui. .
Buat basis data. Perintah ini untuk membuat database baru. .
Buat tabel. Perintah untuk membuat tabel baru di database. .
Masukkan ke dalam. .
4. Pilih. .
Memperbarui. .
Menghapus. .
Ubah Tabel

Untuk mengubah struktur tabel menggunakan perintah apa?

ALTER = Perintah ini digunakan untuk mengubah struktur tabel yang telah dibuat, antara lain mengganti nama tabel, menambah kolom, mengubah kolom, menghapus kolom, serta menugaskan atribut ke kolom.

Untuk membuat tabel baru di MySQL, perintah apa yang digunakan?

CREATE TABLE adalah perintah yang digunakan untuk membuat table dalam basis data mysql .