harian untung99play.xyz

untung99play.xyz: Tutorial Menggunakan SubQuery Dengan MySQL


Untung99 menawarkan beragam permainan yang menarik, termasuk slot online, poker, roulette, blackjack, dan taruhan olahraga langsung. Dengan koleksi permainan yang lengkap dan terus diperbarui, pemain memiliki banyak pilihan untuk menjaga kegembiraan mereka. Selain itu, Untung99 juga menyediakan bonus dan promosi menarik yang meningkatkan peluang kemenangan dan memberikan nilai tambah kepada pemain.

Berikut adalah artikel atau berita tentang Harian untung99play.xyz dengan judul untung99play.xyz: Tutorial Menggunakan SubQuery Dengan MySQL yang telah tayang di untung99play.xyz terimakasih telah menyimak. Bila ada masukan atau komplain mengenai artikel berikut silahkan hubungi email kami di [email protected], Terimakasih.

Subquery adalah kueri dalam kueri, bisa disebut juga sebagai permintaan dalam permintaan atau permintaan bersarang. Subquery dapat digunakan di mana pun ekspresi diizinkan. Subquery adalah ekspresi kueri yang terdapat di dalam tanda kurung. Subquery dapat digunakan dengan pernyataan SELECT, INSERT, UPDATE, atau DELETE.

Subquery MySQL disebut queri dalam, sedangkan queri yang berisi subquery disebut queri luar. Ada lebih dari satu cara untuk menjalankan tugas SQL. Banyak subquery yang bisa diganti dengan SQL join. Alasan menggunakan SQL join adalah biasanya lebih cepat.

Table dalam database yang akan saya gunakan hanya dua dalam tutorial sederhana ini. Seperti biasa saya akan menggunakan database db_belajar, table tb_anggota dan tb_absensi.

CREATE TABLE `tb_anggota` (
  `anggota_id` int(5) NOT NULL,
  `nama` varchar(50) NOT NULL,
  `email` varchar(50) NOT NULL,
  `alamat` varchar(50) NOT NULL,
  `propinsi` varchar(50) NOT NULL,
  `umur` int(2) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

CREATE TABLE tb_absensi (
   id int(5) NOT NULL,
   anggota_id int(5) NOT NULL,
   tanggal date NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;

Tambahkan data ke dalam tabel di atas:

INSERT INTO `tb_anggota` (`anggota_id`, `nama`, `email`, `alamat`, `propinsi`, `umur`) VALUES
(1, 'Wayan', '[email protected]', 'Badung', 'Bali', 21),
(2, 'Made', '[email protected]', 'Gianyar', 'Bali', 19),
(3, 'Nyoman', '[email protected]', 'Klungkung', 'Bali', 30),
(4, 'Ketut', '[email protected]', 'Tabanan', 'Bali', 23),
(5, 'Gede', '[email protected]', 'Karangasem', 'Bali', 27),
(6, 'Putu', '[email protected]', 'Gianyar', 'Bali', 24),
(7, 'Kadek', '[email protected]', 'Denpasar', 'Bali', 31),
(8, 'Komang', '[email protected]', 'Bangli', 'Bali', 19),
(9, 'Ivan', '[email protected]', 'Badung', 'Bali', 22),
(10, 'Toni', '[email protected]', 'Bandung', 'Jawa Barat', 35),
(11, 'Asep', '[email protected]', 'Bandung', 'Jawa Barat', 18),
(12, 'Ucok', '[email protected]', 'Medan', 'Sumatra Utara', 23);

INSERT INTO tb_absensi (id, anggota_id, tanggal) VALUES
 (1, 1, '2019-07-26'),
 (2, 2, '2019-07-26'),
 (3, 3, '2019-07-26'),
 (4, 4, '2019-07-26'),
 (5, 1, '2019-07-27'),
 (6, 2, '2019-07-27');

Misalnya kita akan mencari umur paling tua dari data di atas

SELECT * FROM `tb_anggota` WHERE umur = (SELECT MAX(umur) FROM `tb_anggota`)

Atau akan menampilkan data hanya yang memiliki umur di bawah rata-rata umur anggota

SELECT * FROM `tb_anggota` WHERE umur <(select>

Jika kita akan mencari data anggota yang sama sekali tidak ada di table tb_absensi

SELECT * FROM `tb_anggota` WHERE anggota_id NOT IN (SELECT DISTINCT anggota_id FROM `tb_absensi`)

Bisa juga menggunakan WHERE untuk mencari data absensi pada tanggal tertentu

SELECT * FROM `tb_anggota` WHERE anggota_id IN (SELECT DISTINCT anggota_id FROM `tb_absensi` WHERE tanggal = '2019-07-27')

Sebenarnya penggunaan SubQuery akan bisa menjadi sangat kompleks kalau kedalaman kuerinya lebih dari satu. Sebisa mungkin menggunakan pernyataan JOIN untuk melakukan operasi seperti ini. Sebuah kueri LEFT / OUTER JOIN bisa lebih cepat daripada subquery yang setara karena server mungkin dapat mengoptimalkannya lebih baik. Kemudian pengunaan IN adalah operator yang sangat lambat, karena SQL biasanya mengevaluasinya sebagai serangkaian klausa WHERE yang dipisahkan oleh “OR”.

Silakan klik di sini untuk melihat tutorial MySQL lainnya.