MySQL Select – Kombinasi Query Select

mysql select

MySQL select digunakan untuk memilih data dari sebuah tabel atau beberapa tabel.

Data yang dipilih menggunakan select dapat dalam satu kondisi atau beberapa kondisi yang mengkombinasikan select dengan operator lain.

sebagai contoh kita memilih data yang memiliki alamat di jakarta, maka untuk menampilkan datanya select dikombinasikan dengan where.

Saat memilih data dan kemudian diurutkan maka select dikombinasikan dengan order by.

Begitu juga saat memilih data dari banyak tabel maka select dikombinasikan dengan join.

Ketika data yang hendak ditampilkan memerlukan where dan join sekaligus, maka kombinasi select yang di buat memiliki kombinasi lebih dari satu.

Select dapat dikombinasikan dengan join, where, group by, having, limit, order by dll. komibinasi select ini dapat terjadi dalam 1 statement query.

Bentuk – bentuk Penulisan MySQL Select

Untuk membuat bentuk penulisan mysql silahkan buat terlebih dahulu tabel siswa dengan struktur tabel sebagai berikut:

CREATE TABLE `siswa` (
  `id_siswa` int(11) NOT NULL AUTO_INCREMENT,
  `nama` varchar(50) NOT NULL,
  `jenis_kelamin` enum('Laki-laki','Perempuan') NOT NULL,
  `alamat` varchar(100) NOT NULL,
  `tinggi_badan` int(3) NOT NULL,
  `tgl_lahir` date NOT NULL,
  PRIMARY KEY (`id_siswa`)
) 

Masukkan data ke tabel siswa terlebih dahulu agar data dapat ditampilkan untuk query select.

1. Select kolom tertentu.

SELECT nama_kolom FROM nama_tabel

SELECT nama FROM siswa;
+---------+
| nama    |
+---------+
| Ayu     |
| Rani    |
| Rio     |
| Ani     |
| Rahma   |
| Toni    |
| Lisa    |
| Danil   |
| Bambang |
| Citra   |
+---------+
10 rows in set (0.00 sec)

2. Penggunaan select untuk menampilkan semua data di sebuah tabel.

SELECT * FROM nama_tabel

 SELECT * FROM siswa;
+----------+---------+---------------+---------+--------------+------------+
| id_siswa | nama    | jenis_kelamin | alamat  | tinggi_badan | tgl_lahir  |
+----------+---------+---------------+---------+--------------+------------+
|        1 | Ayu     | Perempuan     | Jakarta |          156 | 2000-08-06 |
|        2 | Rani    | Perempuan     | Bandung |          158 | 1999-05-25 |
|        3 | Rio     | Laki-laki     | Bogor   |          162 | 2000-04-07 |
|        4 | Ani     | Perempuan     | Jakarta |          155 | 2001-05-06 |
|        5 | Rahma   | Perempuan     | Bandung |          160 | 2000-09-05 |
|        6 | Toni    | Laki-laki     | Bandung |          168 | 2000-07-07 |
|        7 | Lisa    | Perempuan     | Jakarta |          163 | 2000-05-07 |
|        8 | Danil   | Laki-laki     | Bandung |          170 | 2000-06-06 |
|        9 | Bambang | Laki-laki     | Jakarta |          172 | 2000-04-05 |
|       10 | Citra   | Perempuan     | Jakarta |          168 | 2000-03-07 |
+----------+---------+---------------+---------+--------------+------------+
10 rows in set (0.00 sec)

3. Kombinasi select dengan where

SELECT kolom1, kolom2 FROM tabel WHERE kolom = ‘nilai’

SELECT nama, alamat FROM siswa WHERE alamat = 'jakarta';
+---------+---------+
| nama    | alamat  |
+---------+---------+
| Ayu     | Jakarta |
| Ani     | Jakarta |
| Lisa    | Jakarta |
| Bambang | Jakarta |
| Citra   | Jakarta |
+---------+---------+
5 rows in set (0.00 sec)

4. Kombinasi select dengan group by

SELECT * FROM nama_tabel GROUP BY nama_kolom

SELECT * FROM siswa GROUP BY alamat;
+----------+------+---------------+---------+--------------+------------+
| id_siswa | nama | jenis_kelamin | alamat  | tinggi_badan | tgl_lahir  |
+----------+------+---------------+---------+--------------+------------+
|        2 | Rani | Perempuan     | Bandung |          158 | 1999-05-25 |
|        3 | Rio  | Laki-laki     | Bogor   |          162 | 2000-04-07 |
|        1 | Ayu  | Perempuan     | Jakarta |          156 | 2000-08-06 |
+----------+------+---------------+---------+--------------+------------+
3 rows in set (0.00 sec)

5. Kombinasi SELECT dengan COUNT dan GROUP

SELECT nama_kolom, COUNT(nama_kolom) as nama_alias FROM nama_tabel GROUP BY nama_alamat;

SELECT alamat, COUNT(alamat) as jumlah FROM siswa GROUP BY alamat;
+---------+--------+
| alamat  | jumlah |
+---------+--------+
| Bandung |      4 |
| Bogor   |      1 |
| Jakarta |      5 |
+---------+--------+
3 rows in set (0.00 sec)

6. Kombinasi SELECT dengan COUNT dan HAVING

SELECT nama_kolom, COUNT(nama_kolom) AS nama_alias FROM nama_tabel WHERE nama_kolom=’nilai’ GROUP BY nama_kolom HAVING COUNT(nama_kolom)>2

SELECT alamat, COUNT(id_siswa) as jumlah FROM siswa WHERE
 jenis_kelamin=’Perempuan’ GROUP BY alamat HAVING COUNT(id_siswa)>2;
+---------+--------+
| alamat  | jumlah |
+---------+--------+
| Jakarta |      4 |
+---------+--------+
1 row in set (0.00 sec)

Leave a Comment