Praktikum Database 1



1.Create Table tb_pengguna: 

CREATE TABLE tb_pengguna;

  • CREATE TABLE: digunakan untuk membuat table tertentu yang di ikuti nama table
  • tb_pengguna: merupakan nama table yang akan di buat (bebas)
2.Added Unique Into Table:

ALTER TABLE 'tb_pengguna' ADD UNIQUE INDEX 'email' ('email');

  • ALTER TABLE: digunakan untuk merubah tabel
  • 'tb_pengguna': adalah nama tabel yang ingin di tambahkan constraint unique
  • ADD: digunaan untuk menambahkan constraint 
  • UNIQUE INDEX: digunakan untuk memastikan bahwa tidak ada nilai duplikat yang diperbolehkan dalam kolom tertentu pada sebuah tabel 
3.Added Index Into Table:

ALTER TABLE 'tb_pengguna' ADD INDEX 'index_n_nt_pengguna' ('nama','no_telp');

  • ALTER TABLE: digunakan untuk merubah tabel
  • 'tb_pengguna': adalah nama tabel 
  • ADD: digunakan untuk menambahkan constraint 
  • INDEX: digunakan untuk mempermudah pencarian data
  • 'index_n_nt_pengguna': merupakan nama index (bebas) 
  • ('nama','no_telp'): field apa saja yang ingin di tambahkan index tersebut
4.Edit Field Data Type:

ALTER TABLE 'tb_pengguna' CHANGE COLUMN 'nama' 'nama' VARCHAR(250);

  • ALTER TABLE: digunakan untuk merubah tabel
  • 'tb_pengguna': adalah nama tabel 
  • CHANGE : digunakan untuk mengganti/merubah field/data
  • COLUMN: untuk menentukan yang ingin dirubah yaitu kolom
  •  'nama': yang pertama untuk mendefinisikan field mana yang ingin di rubah
  •  'nama' VARCHAR(250): untuk menentukan dirubah seperti apa field tersebut 

5.Insert Data Into Table tb_pengguna:

INSERT INTO tb_pengguna VALUES 
(101,'Satrio Augistiawan','satrio@gmail.com',08997318350),
(102,'Muhammad Alvin','alvin@gmail.com',089812479182),
(103,'Triana Octavia','triana@gmail.com',081827271823);

  • INSERT INTO: digunakan untuk menambahkan data pada tabel
  • tb_pengguna: merupakan apa nama tabel yang ingin di tambahkan (opsional)
  • VALUESkata kunci yang digunakan untuk memasukkan nilai atau data ke dalam sebuah tabel
  • Di ikuti dengan data/nilai yang ingin di tambahkan ke dalam tabel
6.Create Table tb_team:

CREATE TABLE tb_pengguna;

  • CREATE TABLE: digunakan untuk membuat table tertentu yang di ikuti nama table
  • tb_team: merupakan nama table yang akan di buat (bebas)
7.Create Table tb_koordinator

CREATE TABLE tb_pengguna;

  • CREATE TABLE: digunakan untuk membuat table tertentu yang di ikuti nama table
  • tb_koordinator: merupakan nama table yang akan di buat (bebas)
8.Add Constraint FOREIGN KEY 

ALTER TABLE tb_team ADD CONSTRAINT FK_idk_idk FOREIGN KEY (`id_koordinator`) REFERENCES tb_koordinator (`id_koordinator`) ON UPDATE CASCADE ON DELETE CASCADE;

  • ALTER TABLE: digunakan untuk merubah tabel
  • 'tb_team': adalah nama tabel yang ingin ditambahkan FOREIGN KEY 
  • ADD CONSTRAINT: digunakan untuk menambahkan constraint pada tabel
  • FK_idk_idk: nama constraint foreign key (bebas)
  • FOREIGN KEY: Constraint apa yang ingin di tambahkan
  • ('id_koordinator'): field apa yang ingin di tambahkan constraint FOREIGN KEY
  • REFERENCES tb_koordinator (`id_koordinator`): Untuk menjadi acuan tb_team kepada tabel koordinator pada field 'id_koordinator'
9.Insert Into Table tb_team And tb_koordinator

INSERT INTO tb_team VALUES (201,'Garuda',113),(202,'Elang',111),(203,'Pipit',112);
INSERT INTO tb_koordinator VALUES (111,'Udin'),(112,'Tatang'),(113,'Bontot');

  • INSERT INTO: digunakan untuk menambahkan data pada tabel
  • tb_team/koordinator: merupakan apa nama tabel yang ingin di tambahkan (opsional)
  • VALUESkata kunci yang digunakan untuk memasukkan nilai atau data ke dalam sebuah tabel
  • Di ikuti dengan data/nilai yang ingin di tambahkan ke dalam tabel
10.Get Data For Each Table Created for all fields

SELECT * FROM tb_pengguna;
SELECT * FROM tb_team;
SELECT * FROM tb_koordinator;

  • SELECT:Digunakan untuk mengambil data dari satu atau beberapa tabel.
  • * : untuk melaksanakan SELECT pada seluruh informasi pada tabel. 
  • FROM: digunakan untuk menginisialisasi nama tabel, diiringi nama tabel di belakangnya.
11.Get Data For Each Table Created for some fields

SELECT nama FROM tb_pengguna;

  • SELECT:Digunakan untuk mengambil data dari satu atau beberapa tabel.
  • 'nama': adalah nama field apa yang ingin di tampilkan
  • FROM: digunakan untuk menginisialisasi nama tabel, diiringi nama tabel di belakangnya
  • tb_pengguna: nama tabel apa yang ingin di tampilkan 
12.Get Data From Tables Created Using Filter

 SELECT * FROM tb_pengguna WHERE nama LIKE 'satrio%'


  • SELECT:Digunakan untuk mengambil data dari satu atau beberapa tabel.
  • * : untuk melaksanakan SELECT pada seluruh informasi pada tabel.
  • 'FROM: digunakan untuk menginisialisasi nama tabel, diiringi nama tabel di belakangnya.
  • 'tb_pengguna': adalah nama tabel apa yang ingin di tampilkan
  • WHERE: digunakan buat menginisialisasi kolom tertentu.
  • nama': adalah nama field apa yang ingin di tampilkan
  • LIKE: sebagai operator pencocokan pola (pattern matching) dalam pencarian data.
  • satrio%: untuk mengambil data yang di berawal kata 'satrio' 
13.Get Data From Table tb_team And tb_koordinator Using Inner Join

SELECT * FROM tb_team AS a INNER JOIN tb_koordinator AS b ON a.id_koordinator = b.id_koordinator;


  • SELECT: digunakan untuk mengambil data dari satu atau beberapa tabel.
  • * : untuk melaksanakan SELECT pada seluruh informasi pada tabel. 
  • FROM: digunakan untuk menginisialisasi nama tabel, diiringi nama tabel di belakangnya.
  • tb_team/tb_koordinator: nama tabel apa yang ingin di gabungkan
  • AS a / AS b: alias untuk tb_team / tb_koordinator
  • INNER JOINuntuk menggabungkan dua tabel berdasarkan kolom yang memiliki nilai yang sama di kedua tabel 
  • ONpenggabungan antara kedua tabel tersebut, yaitu field id_koordinator pada tabel tb_team harus sama dengan kolom id_koordinator pada tabel tb_koordinator.
14.Get Data From Table tb_team And tb_koordinator Using Left Join

SELECT * FROM tb_team AS a LEFT JOIN tb_koordinator AS b ON a.id_koordinator = b.id_koordinator;

  • SELECT: digunakan untuk mengambil data dari satu atau beberapa tabel.
  • * : untuk melaksanakan SELECT pada seluruh informasi pada tabel. 
  • FROM: digunakan untuk menginisialisasi nama tabel, diiringi nama tabel di belakangnya.
  • tb_team: nama tabel apa yang ingin di gabungkan
  • AS a / AS b: alias untuk tb_team / tb_koordinator
  • LEFT JOINmenggabungkan dua tabel berdasarkan kolom tertentu, tetapi mencakup semua baris dari tabel di sebelah kiri dan hanya baris yang sesuai dari tabel di sebelah kanan.
  • ONpenggabungan antara kedua tabel tersebut, yaitu field id_koordinator pada tabel tb_team harus sama dengan kolom id_koordinator pada tabel tb_koordinator.
15.Get Data From Table tb_team And tb_koordinator Using Right Join

SELECT * FROM tb_team AS a RIGHT JOIN tb_koordinator AS b ON a.id_koordinator = b.id_koordinator;

  • SELECT: digunakan untuk mengambil data dari satu atau beberapa tabel.
  • * : untuk melaksanakan SELECT pada seluruh informasi pada tabel. 
  • FROM: digunakan untuk menginisialisasi nama tabel, diiringi nama tabel di belakangnya.
  • tb_team: nama tabel apa yang ingin di gabungkan
  • AS a / AS b: alias untuk tb_team / tb_koordinator
  • RIGHT JOINuntuk menggabungkan dua tabel berdasarkan kunci primernya, dan mengambil semua baris dari tabel kanan, serta baris yang sesuai dari tabel kiri dalam kondisi yang diberikan.
  • ONpenggabungan antara kedua tabel tersebut, yaitu field id_koordinator pada tabel tb_team harus sama dengan kolom id_koordinator pada tabel tb_koordinator.
16.Rename Tb_pengguna To Tb_anggota

ALTER TABLE tb_pengguna RENAME to tb_anggota;

  • ALTER TABLE: digunakan untuk merubah tabel
  • 'tb_pengguna': adalah nama tabel yang ingin diubah namanya
  • to: digunakan untuk mendeklarasikan 'ke'
  • 'tb_anggota': adalah nama tabel yang baru
17.Add Column Team On Tb_anggota

ALTER TABLE tb_anggota ADD COLUMN team INT;

 

  • ALTER TABLE: digunakan untuk merubah tabel
  • 'tb_anggota': adalah nama tabel yang ingin di tambahkan kolom baru
  • ADD COLUMN: adalah perintah untuk menambahkan kolom ke tabel
  • team: adalah nama kolom yang akan di tambahkan
  • INT: adalah tipe data untuk kolom yang akan di tambahkan  

18.Add Relation Between Tb_anggota And Tb_team

 SELECT * FROM tb_anggota AS a LEFT JOIN tb_team AS b ON a.team = b.nama_team;

  • SELECT: digunakan untuk mengambil data dari satu atau beberapa tabel.
  • * : untuk melaksanakan SELECT pada seluruh informasi pada tabel. 
  • FROM: digunakan untuk menginisialisasi nama tabel, diiringi nama tabel di belakangnya.
  • tb_anggota/tb_team: nama tabel apa yang ingin di gabungkan
  • AS a / AS b: alias untuk tb_anggota / tb_team
  • LEFT JOINmenggabungkan dua tabel berdasarkan kolom tertentu, tetapi mencakup semua baris dari tabel di sebelah kiri dan hanya baris yang sesuai dari tabel di sebelah kanan
  • ONpenggabungan antara kedua tabel tersebut, yaitu field id_koordinator pada tabel tb_team harus sama dengan kolom id_koordinator pada tabel tb_koordinator.

19.Truncate All Table

TRUNCATE tb_anggota;
TRUNCATE tb_team;
TRUNCATE tb_koordinator
;

  • TRUNCATE: perintah yang digunakan untuk mengosongkan/menghapus semua isi tabel
  • tb_anggota/tb_team/tb_koordinator: nama tabel yang ingin di TRUNCATE/dikosongkan
20.Insert Data Into Table tb_koordinator at least 5 data

INSERT INTO tb_koordinator VALUES
-> (101, 'Agus'),
-> (102, 'Budi'),
-> (103, 'Citra'),
-> (104, 'Dewi'),
-> (105, 'Eka');

  • INSERT INTO: digunakan untuk menambahkan data pada tabel
  • tb_koordinator: adalah apa nama tabel yang ingin di tambahkan (opsional)
  • VALUESkata kunci yang digunakan untuk memasukkan nilai atau data ke dalam sebuah tabel
  • Di ikuti dengan data/nilai yang ingin di tambahkan ke dalam tabel
21.Insert Data Into Table tb_team at least 6 data with 2 data null for column id_koordinator

INSERT INTO tb_team VALUES
-> (201,'Elang',101),
-> (202,'Merpati',102),
-> (203,'Pipit',103),
-> (204,'Garuda',104),
-> (205,'Blue Bird',NULL),
-> (206,'Love Bird',NULL);

  • INSERT INTO: digunakan untuk menambahkan data pada tabel
  • tb_team: adalah apa nama tabel yang ingin di tambahkan (opsional)
  • VALUESkata kunci yang digunakan untuk memasukkan nilai atau data ke dalam sebuah tabel
  • Di ikuti dengan data/nilai yang ingin di tambahkan ke dalam tabel

22.Insert Data Into Table tb_anggota at least 60 data with some of field team from
tb_team and some field team with null values

INSERT INTO tb_anggota VALUES
-> ('agus.s', 'Agus Santoso', 'agus@example.com', '081234567890', '201'),
-> ('adi.w', 'Adi Wibowo', 'adi@example.com', '082345678901', '201'),
-> ('ari.p', 'Ari Prasetyo', 'ari@example.com', '083456789012', '201'),
-> ('dewi.s', 'Dewi Setyawati', 'dewi@example.com', '084567890123', NULL),
-> ('ega.p', 'Ega Putri', 'ega@example.com', '085678901234', '201'),
-> ('eni.s', 'Eni Sari', 'eni@example.com', '086789012345', '201'),
-> ('fauzi.r', 'Fauzi Rahman', 'fauzi@example.com', '087890123456', '201'),
-> ('gilang.p', 'Gilang Pratama', 'gilang@example.com', '088901234567', '201'),
-> ('hendra.a', 'Hendra Agus', 'hendra@example.com', '089012345678', NULL),
-> ('ida.m', 'Ida Mulyani', 'idaa@example.com', '089123456789', '201'),
-> ('joko.p', 'Joko Priyono', 'joko@example.com', '081234567890', NULL),
-> ('jati.s', 'Jati Surya', 'jati@example.com', '082345678901', '202'),
-> ('kiki.m', 'Kiki Maulana', 'kiki@example.com', '083456789012', '202'),
-> ('lia.k', 'Lia Kurnia', 'lia@example.com', '084567890123', '202'),
-> ('lina.s', 'Lina Setiawati', 'linaa@example.com', '085678901234', NULL),
-> ('mira.s', 'Mira Sari', 'mira@example.com', '086789012345', '202'),
-> ('nana.f', 'Nana Farida', 'nana@example.com', '087890123456', '202'),
-> ('ogi.r', 'Ogi Ramadhan', 'ogi@example.com', '088901234567', NULL),
-> ('putri.s', 'Putri Sari', 'putri@example.com', '089012345678', '202'),
-> ('rio.p', 'Rio Purnama', 'rio@example.com', '089123456789', '202'),
-> ('sinta.w', 'Sinta Wijaya', 'sinta@example.com', '081234567890', '203'),
-> ('susi.a', 'Susi Agustin', 'susi@example.com', '087768987978', NULL),
-> ('sari.p', 'Sari Pratiwi', 'sarii@example.com', '082345678901', '203'),
-> ('tika.s', 'Tika Setiawan', 'tika@example.com', '083456789012', '203'),
-> ('tomo.p', 'Tomo Priyadi', 'tomo@example.com', '084567890123', '203'),
-> ('umi.k', 'Umi Kurniati', 'umi@example.com', '085678901234', '203'),
-> ('vivi.s', 'Vivi Susanti', 'vivi@example.com', '086789012345', NULL),
-> ('wawan.s', 'Wawan Santoso', 'wawan@example.com', '087890123456', '203'),
-> ('yani.s', 'Yani Susanto', 'yani@example.com', '088901234567', '203'),
-> ('zaki.r', 'Zaki Rahman', 'zaki@example.com', '089012345678', '203'),
-> ('zena.f', 'Zena Fitriani', 'zena@example.com', '089123456789', '203'),
-> ('anton.n', 'Anton Nugroho', 'anton@example.com', '081234567890', '204'),
-> ('anita.s', 'Anita Sari', 'anita@example.com', '082345678901', '204'),
-> ('budi.p', 'Budi Prasetyo', 'budi@example.com', '083456789012', '24'),
-> ('cici.s', 'Cici Setiawan', 'cici@example.com', '084567890123', NULL),
-> ('deni.a', 'Deni Agus', 'deni@example.com', '085678901234', '204'),
-> ('eko.w', 'Eko Wibowo', 'eko@example.com', '086789012345', NULL),
-> ('fitra.m', 'Fitra Maulana', 'fitra@example.com', '087890123456', '204'),
-> ('gita.r', 'Gita Ramadhani', 'gita@example.com', '088901234567', '204'),
-> ('hani.s', 'Hani Sari', 'hani@example.com', '089012345678', '204'),
-> ('ida.n', 'Ida Nurhayati', 'ida@example.com', '089123456789', '204'),
-> ('jaka.p', 'Jaka Putra', 'jaka@example.com', '081234567890', '205'),
-> ('joni.s', 'Joni Susanto', 'joni@example.com', '082345678901', '205'),
-> ('kunto.p', 'Kunto Prasetyo', 'kunto@example.com', '083456789012', '205'),
-> ('lina.r', 'Lina Rizki', 'lina@example.com', '084567890123', '205'),
-> ('maya.s', 'Maya Sari', 'maya@example.com', '085678901234', '205'),
-> ('nisa.f', 'Nisa Fitriani', 'nisa@example.com', '086789012345', '205'),
-> ('opik.r', 'Opik Ramadhan', 'opik@example.com', '087890123456', '205'),
-> ('purwanto.p', 'Purwanto Prasetyo', 'purwanto@example.com', '088901234567', '205'),
-> ('rani.s', 'Rani Susanti', 'rani@example.com', '089012345678', '205'),
-> ('sari.a', 'Sari Amelia', 'sari@example.com', '089123456789', NULL),
-> ('toni.s', 'Toni Susanto', 'toni@example.com', '081234567890', NULL),
-> ('udin.p', 'Udin Prasetyo', 'udin@example.com', '082345678901', '206'),
-> ('vina.r', 'Vina Ramadhani', 'vina@example.com', '083456789012', '206'),
-> ('wira.s', 'Wira Setiawan', 'wira@example.com', '084567890123', '206'),
-> ('xena.f', 'Xena Fitriani', 'xena@example.com', '085678901234', '206'),
-> ('yoga.p', 'Yoga Pratama', 'yoga@example.com', '086789012345', '206'),
-> ('zain.r', 'Zain Rahman', 'zain@example.com', '087890123456', NULL),
-> ('aida.s', 'Aida Sari', 'aida@example.com', '088901234567', '206'),
-> ('bambang.p', 'Bambang Prasetyo', 'bambang@example.com', '089012345678', '206'),
-> ('cinta.s', 'Cinta Susanti', 'cinta@example.com', '089123456789', '206');

  • INSERT INTO: digunakan untuk menambahkan data pada tabel
  • tb_team: adalah apa nama tabel yang ingin di tambahkan (opsional)
  • VALUESkata kunci yang digunakan untuk memasukkan nilai atau data ke dalam sebuah tabel
  • Di ikuti dengan data/nilai yang ingin di tambahkan ke dalam tabel

23.Get Data From 3 All Table With Null Data From Table Tb_koordinator

SELECT a.nama as nama , b.nama_team as team, c.nama as koordinator

FROM tb_anggota a RIGHT JOIN tb_team b ON a.team = b.id_team
RIGHT JOIN tb_koordinator c ON b.id_koordinator = c.id_koordinator;


  • SELECT: Ini adalah perintah untuk memilih kolom atau data yang ingin diambil dari tabel.
  • a.nama as nama: untuk memilih kolom 'nama' dari tabel 'tb_anggota', dan memberikan nama alias 'nama' untuk kolom tersebut.
  • b.nama_team as team: untuk memilih kolom 'nama_team' dari tabel 'tb_team', dan memberikan nama alias 'team' untuk kolom tersebut.
  • c.nama as koordinator: untuk memilih kolom 'nama' dari tabel 'tb_koordinator', dan memberikan nama alias 'koordinator' untuk kolom tersebut.
  • FROM: untuk menentukan tabel atau sumber data yang ingin digunakan dalam perintah SELECT.
  • RIGHT JOIN:untuk menggabungkan dua tabel atau lebih dengan mengambil data dari kedua tabel yang memiliki kesamaan berdasarkan kolom yang ditentukan. RIGHT JOIN digunakan untuk mempertahankan semua baris dari tabel kanan dan baris yang cocok dari tabel kiri.
  • tb_koordinator: nama tabel kedua yang di-join dengan tabel tb_barang.
  • c: alias untuk tabel kedua tb_koordinator untuk menghemat pengetikan nanti.
  • ON: merupakan bagian yang menentukan kriteria join di mana data dari kedua tabel akan di-join berdasarkan nilai kolom yang sama di kedua tabel.
  • b.id_koordinator: nama kolom pada tabel pertama (tb_barang) yang akan digunakan sebagai kunci join.
  • c.id_koordinator: nama kolom pada tabel kedua (tb_koordinator) yang akan digunakan sebagai kunci join.
24.Get Data From 3 All Table Without Null Data From Table Tb_koordinator

SELECT a.nama as nama , b.nama_team as team, c.nama as koordinator
FROM tb_anggota a INNER JOIN tb_team b ON a.team = b.id_team
INNER JOIN tb_koordinator c ON b.id_koordinator = c.id_koordinator;

  • SELECT: Ini adalah perintah untuk memilih kolom atau data yang ingin diambil dari tabel.
  • a.nama as nama: untuk memilih kolom 'nama' dari tabel 'tb_anggota', dan memberikan nama alias 'nama' untuk kolom tersebut.
  • b.nama_team as team: untuk memilih kolom 'nama_team' dari tabel 'tb_team', dan memberikan nama alias 'team' untuk kolom tersebut.
  • c.nama as koordinator: untuk memilih kolom 'nama' dari tabel 'tb_koordinator', dan memberikan nama alias 'koordinator' untuk kolom tersebut.
  • FROM: untuk menentukan tabel atau sumber data yang ingin digunakan dalam perintah SELECT.
  • INNER JOIN:untuk menggabungkan dua tabel berdasarkan kolom yang memiliki nilai yang sama di kedua tabel.
  • tb_koordinator: nama tabel kedua yang di-join dengan tabel tb_barang.
  • c: alias untuk tabel kedua tb_koordinator untuk menghemat pengetikan nanti.
  • ON: merupakan bagian yang menentukan kriteria join di mana data dari kedua tabel akan di-join berdasarkan nilai kolom yang sama di kedua tabel.
  • b.id_koordinator: nama kolom pada tabel pertama (tb_barang) yang akan digunakan sebagai kunci join.
  • c.id_koordinator: nama kolom pada tabel kedua (tb_koordinator) yang akan digunakan sebagai kunci join.
25.Get Data only field fullname from tb_koordinator and fullname from tb_anggota without null data

SELECT a.nama as nama , c.nama as koordinator FROM tb_anggota a
RIGHT JOIN tb_team b ON a.team = b.id_team
RIGHT JOIN tb_koordinator c ON b.id_koordinator = c.id_koordinator;
 
 
  • SELECT: Ini adalah perintah untuk memilih kolom atau data yang ingin diambil dari tabel.
  • a.nama as nama: untuk memilih kolom 'nama' dari tabel 'tb_anggota', dan memberikan nama alias 'nama' untuk kolom tersebut.
  • b.nama_team as team: untuk memilih kolom 'nama_team' dari tabel 'tb_team', dan memberikan nama alias 'team' untuk kolom tersebut.
  • c.nama as koordinator: untuk memilih kolom 'nama' dari tabel 'tb_koordinator', dan memberikan nama alias 'koordinator' untuk kolom tersebut.
  • FROM: untuk menentukan tabel atau sumber data yang ingin digunakan dalam perintah SELECT.
  • tb_anggota a: untuk memilih tabel 'tb_anggota' dan memberikan alias 'a' untuk tabel tersebut.
  • RIGHT JOIN: untuk menggabungkan dua tabel atau lebih dengan mengambil data dari kedua tabel yang memiliki kesamaan berdasarkan kolom yang ditentukan. RIGHT JOIN digunakan untuk mempertahankan semua baris dari tabel kanan dan baris yang cocok dari tabel kiri.
  • tb_team b: perintah untuk memilih tabel 'tb_team' dan memberikan alias 'b' untuk tabel tersebut.
  • ON a.team = b.id_team: perintah untuk menentukan kondisi join antara tabel 'tb_anggota' dan 'tb_team' berdasarkan kolom 'team' pada tabel 'tb_anggota' dan kolom 'id_team' pada tabel 'tb_team'.
  • RIGHT JOIN: perintah untuk menggabungkan tabel 'tb_team' dengan tabel 'tb_koordinator' menggunakan RIGHT JOIN.
  • tb_koordinator c:perintah untuk memilih tabel 'tb_koordinator' dan memberikan alias 'c' untuk tabel tersebut.
  • ON b.id_koordinator c.id_koordinator: Ini adalah perintah untuk menentukan kondisi join antara tabel 'tb_team' dan 'tb_koordinator' berdasarkan kolom 'id_koordinator' pada tabel 'tb_team' dan kolom 'id_koordinator' pada tabel 'tb_koordinator'.
26.Get Data only field fullname from tb_koordinator and fullname from tb_anggota with null data
 
SELECT a.nama as nama , c.nama as koordinator FROM tb_anggota a
INNER JOIN tb_team b ON a.team = b.id_team
INNER JOIN tb_koordinator c ON b.id_koordinator = c.id_koordinator;
 

  • SELECT: Ini adalah perintah untuk memilih kolom atau data yang ingin diambil dari tabel.
  • a.nama as nama: untuk memilih kolom 'nama' dari tabel 'tb_anggota', dan memberikan nama alias 'nama' untuk kolom tersebut.
  • b.nama_team as team: untuk memilih kolom 'nama_team' dari tabel 'tb_team', dan memberikan nama alias 'team' untuk kolom tersebut.
  • c.nama as koordinator: untuk memilih kolom 'nama' dari tabel 'tb_koordinator', dan memberikan nama alias 'koordinator' untuk kolom tersebut.
  • FROM: untuk menentukan tabel atau sumber data yang ingin digunakan dalam perintah SELECT.
  • tb_anggota a: untuk memilih tabel 'tb_anggota' dan memberikan alias 'a' untuk tabel tersebut.
  • INNER JOIN:untuk menggabungkan dua tabel berdasarkan kolom yang memiliki nilai yang sama di kedua tabel.
  • tb_team b: perintah untuk memilih tabel 'tb_team' dan memberikan alias 'b' untuk tabel tersebut.
  • ON a.team = b.id_team: perintah untuk menentukan kondisi join antara tabel 'tb_anggota' dan 'tb_team' berdasarkan kolom 'team' pada tabel 'tb_anggota' dan kolom 'id_team' pada tabel 'tb_team'.
  • INNER JOIN: perintah untuk menggabungkan tabel 'tb_team' dengan tabel 'tb_koordinator' menggunakan INNER JOIN.
  • tb_koordinator c:perintah untuk memilih tabel 'tb_koordinator' dan memberikan alias 'c' untuk tabel tersebut.
  • ON b.id_koordinator c.id_koordinator: Ini adalah perintah untuk menentukan kondisi join antara tabel 'tb_team' dan 'tb_koordinator' berdasarkan kolom 'id_koordinator' pada tabel 'tb_team' dan kolom 'id_koordinator' pada tabel 'tb_koordinator'.
27.Get Data From 3 All Table Sort By Fullname From Tb_anggota Alphabetically

SELECT a.nama as nama , c.nama as koordinator FROM tb_anggota a
INNER JOIN tb_team b ON a.team = b.id_team
INNER JOIN tb_koordinator c ON b.id_koordinator = c.id_koordinator ORDER BY a.nama ASC;

  • SELECT a.nama as nama, c.nama as koordinator: Query ini memilih dua kolom yaitu nama dari tabel tb_anggota dan nama dari tabel tb_koordinator. Kemudian diberikan alias dengan menggunakan keyword as untuk kolom nama dari tabel tb_anggota menjadi nama dan untuk kolom nama dari tabel tb_koordinator menjadi koordinator.
  • FROM tb_anggota a: menentukan bahwa kolom nama yang dipilih berasal dari tabel tb_anggota, dan diberikan alias a untuk tabel tersebut.
  • INNER JOIN tb_team b ON a.team = b.id_team: untuk menggabungkan tabel tb_anggota dan tb_team berdasarkan kolom team dari tabel tb_anggota dan kolom id_team dari tabel tb_team.
  • INNER JOIN tb_koordinator c ON b.id_koordinator = c.id_koordinator: untuk menggabungkan tabel tb_team dan tb_koordinator berdasarkan kolom id_koordinator dari kedua tabel.
  • ORDER BY a.nama ASC: Query ini mengurutkan hasil akhir berdasarkan kolom nama dari tabel tb_anggota secara ascending atau dari yang terkecil ke terbesar/ A - Z. 
28.Count The Number Of Members Based On The Team
 
SELECT b.nama_team, COUNT(a.userid) as jumlah_orang FROM tb_anggota AS a
LEFT JOIN tb_team AS b ON a.team = b.id_team
LEFT JOIN tb_koordinator AS c ON b.id_koordinator = c.id_koordinator
GROUP BY b.nama_team;
 
  • SELECT: digunakan untuk mengambil data dari satu atau beberapa tabel.
  • COUNT(a.userid) as jumlah_anggota: Digunakan untuk menghitung jumlah anggota dalam setiap tim, dengan menggunakan fungsi COUNT pada kolom userid dari tabel tb_anggota. Jumlah anggota kemudian ditampilkan dalam hasil query dengan alias jumlah_orang.
  • FROM tb_anggota AS a : Digunakan untuk menunjukkan bahwa tabel tb_anggota akan digunakan dalam query, dengan menggunakan alias a.
  • LEFT JOIN tb_team AS b ON a.team = b.id_team : Digunakan untuk menggabungkan tabel tb_anggota dan tb_team berdasarkan kolom team dari tabel tb_anggota yang sama dengan kolom id_team dari tabel tb_team. LEFT JOIN digunakan untuk mempertahankan semua baris dari tabel tb_team bahkan jika tidak ada baris yang cocok di tabel tb_anggota.
  • LEFT JOIN tb_koordinator AS c ON b.id_koordinator = c.id_koordinator : Digunakan untuk menggabungkan tabel tb_team dengan tb_koordinator berdasarkan kolom id_koordinator.LEFT JOIN digunakan untuk mempertahankan semua baris dari tabel tb_team bahkan jika tidak ada baris yang cocok di tabel tb_koordinator.
  • GROUP BY b.nama_team : Digunakan untuk mengelompokkan hasil query berdasarkan nama tim dari tabel tb_team. Ini memungkinkan kita untuk menampilkan jumlah anggota dalam setiap tim secara terpisah. 
29.Count The Number Of Members Based On Fullname On Tb_koordinator That Has Members More Than Or Equal To 5.
 
SELECT c.nama, COUNT(a.userid) as jumlah_anggota FROM tb_anggota AS a
LEFT JOIN tb_team AS b ON a.team = b.id_team
LEFT JOIN tb_koordinator AS c ON b.id_koordinator = c.id_koordinator
GROUP BY c.nama HAVING COUNT(a.userid) >= 5;
 
  • SELECT: digunakan untuk mengambil data dari satu atau beberapa tabel.
  • COUNT(a.userid) as jumlah_anggota: Perintah COUNT digunakan untuk menghitung jumlah baris dalam sebuah tabel. Pada query di atas, COUNT(a.userid) digunakan untuk menghitung jumlah baris pada kolom "userid" dari tabel "tb_anggota", dan hasil perhitungan tersebut diberikan alias dengan nama "jumlah_anggota".
  • FROM tb_anggota AS a: Perintah FROM digunakan untuk menentukan tabel mana yang akan digunakan dalam query. Pada query di atas, perintah FROM digunakan untuk memilih tabel "tb_anggota" dan memberikan alias dengan nama "a".
  • LEFT JOIN tb_team AS b ON a.team = b.id_team: LEFT JOIN digunakan untuk menggabungkan data dari tabel "tb_anggota" (diberikan alias "a") dan tabel "tb_team" (diberikan alias "b") berdasarkan nilai pada kolom "team" dari tabel "tb_anggota" dan kolom "id_team" dari tabel "tb_team".
  • LEFT JOIN tb_koordinator AS c ON b.id_koordinator = c.id_koordinator: LEFT JOIN digunakan untuk menggabungkan data dari tabel "tb_team" (diberikan alias "b") dan tabel "tb_koordinator" (diberikan alias "c") berdasarkan nilai pada kolom "id_koordinator" dari tabel "tb_team" dan kolom "id_koordinator" dari tabel "tb_koordinator".
  • GROUP BY c.nama: Perintah GROUP BY digunakan untuk mengelompokkan data berdasarkan nilai pada kolom tertentu. Pada query ini, GROUP BY digunakan untuk mengelompokkan data berdasarkan nilai pada kolom "nama" dari tabel "tb_koordinator".
  • HAVING COUNT(a.userid) >= 5  :Perintah HAVING digunakan untuk menentukan kondisi untuk pengelompokan data yang dihasilkan oleh GROUP BY. Pada query di atas, HAVING digunakan untuk memfilter data yang dihasilkan oleh pengelompokan dengan kondisi jumlah anggota setiap tim yang sama dengan atau lebih besar dari 5 orang. Kondisi tersebut diterapkan pada kolom "userid" dari tabel "tb_anggota". 
30.Create View From Data On Point 26
 
CREATE VIEW daftar_nama AS
SELECT a.nama as nama , c.nama as koordinator FROM tb_anggota a
INNER JOIN tb_team b ON a.team = b.id_team
INNER JOIN tb_koordinator c ON b.id_koordinator = c

  • CREATE VIEW daftar_nama AS: Command ini membuat sebuah view baru yang bernama daftar_nama. 
  • SELECT a.nama as nama , c.nama as koordinator: Command ini memilih dua kolom dari tabel-tabel yang akan digunakan untuk membuat view: a.nama dari tabel tb_anggota (yang merepresentasikan nama anggota), dan c.nama dari tabel tb_koordinator (yang merepresentasikan nama koordinator). Kata kunci as digunakan untuk memberikan alias pada nama kolom, yang akan digunakan untuk merujuk pada kolom-kolom tersebut di dalam view.
  • FROM tb_anggota a: Command ini menentukan tabel tb_anggota dan memberikan alias a pada tabel tersebut.
  • INNER JOIN tb_team b ON a.team = b.id_team: Command ini melakukan inner join antara tabel tb_anggota (a) dan tb_team (b) berdasarkan kolom team di tabel tb_anggota dan kolom id_team di tabel tb_team.
  • INNER JOIN tb_koordinator c ON b.id_koordinator = c: Command ini melakukan inner join antara tabel tb_team (b) dan tb_koordinator (c) berdasarkan kolom id_koordinator di tabel tb_team dan kolom id di tabel tb_koordinator.
31.Create Temporary Table From Data On Point 26

CREATE TABLE temp_dataname
SELECT a.nama as nama , c.nama as koordinator FROM tb_anggota a
INNER JOIN tb_team b ON a.team = b.id_team
INNER JOIN tb_koordinator c ON b.id_koordinator = c.id_koordinator;


  • CREATE TABLE temp_dataname: membuat sebuah tabel baru bernama "temp_dataname". Tabel ini belum memiliki isi data, namun kita sudah menentukan struktur tabel yang akan digunakan.
  • SELECT a.nama as nama , c.nama as koordinator FROM tb_anggota a:  memilih kolom "nama" dari tabel "tb_anggota" dan memberi alias "nama" pada kolom tersebut. Aliasan ini akan digunakan pada command selanjutnya.
  • INNER JOIN tb_team b ON a.team = b.id_team: melakukan operasi JOIN antara tabel "tb_anggota" dan "tb_team". Kondisi yang digunakan untuk JOIN adalah kolom "team" pada tabel "tb_anggota" sama dengan kolom "id_team" pada tabel "tb_team".
  • INNER JOIN tb_koordinator c ON b.id_koordinator = c.id_koordinator;: melakukan operasi JOIN antara tabel "tb_team" dan "tb_koordinator". Kondisi yang digunakan untuk JOIN adalah kolom "id_koordinator" pada tabel "tb_team" sama dengan kolom "id_koordinator" pada tabel "tb_koordinator"

32.Truncate Table Temporary


TRUNCATE temp_dataname;

  • TRUNCATE: perintah yang digunakan untuk mengosongkan/menghapus semua isi tabel
  • temp_dataname: nama temporary yang ingin di TRUNCATE/dikosongkan

33.Insert Data Into Table Temporary From View Using Query Insert Data Using Select

INSERT INTO temp_dataname SELECT * FROM daftar_nama;


  • INSERT INTO temp_dataname: perintah SQL untuk memasukkan data dari satu tabel ke dalam tabel lain. Dalam kasus ini, kita ingin memasukkan data ke dalam tabel temp_dataname.
  • SELECT *: perintah untuk memilih semua kolom dari tabel daftar_nama.
  • FROM daftar_nama - Ini adalah perintah untuk memilih view daftar_nama sebagai sumber data. Jadi, perintah SELECT * akan memilih semua kolom dari view daftar_nama.
34.Add Column Captain Using Data Type Boolean

ALTER TABLE table_name ADD COLUMN Captain BOOLEAN;

  • ALTER TABLE: digunakan untuk merubah tabel
  • 'tb_anggota': adalah nama tabel yang ingin di tambahkan kolom baru
  • ADD COLUMN: adalah perintah untuk menambahkan kolom ke tabel
  • Captain: adalah nama kolom yang akan di tambahkan
  • BOOLEAN: adalah tipe data untuk kolom yang akan di tambahkan  
35.Update Data tb_anggota For Rach Team Have 1 Captain
  • UPDATE tb_anggota set Captain =1 WHERE userid ='agus.s';
  • UPDATE tb_anggota set Captain =1 WHERE userid ='aida.s';
  • UPDATE tb_anggota set Captain =1 WHERE userid ='anita.s';
  • UPDATE tb_anggota set Captain =1 WHERE userid ='jaka.p';
  • UPDATE tb_anggota set Captain =1 WHERE userid ='sari.p';
  • UPDATE tb_anggota: Perintah untuk memperbarui nilai di tabel tb_anggota.
  • SET Captain = '1': Menetapkan nilai '1/TRUE' pada kolom Captain untuk setiap baris yang memenuhi kondisi.
  • WHERE userid ='userid yang ingin di tambahkan captain'Kondisi yang harus dipenuhi agar nilai kolom jenis_kelamin diperbarui adalah nilai kolom userid yang sesuai dengan salah satu nilai dalam daftar nilai
36.Add Column jenis_kelamin Using Data Type Enum

ALTER TABLE tb_anggota ADD COLUMN jenis_kelamin ENUM ('L','P');

  • ALTER TABLE: digunakan untuk merubah tabel
  • 'tb_anggota': adalah nama tabel yang ingin di tambahkan kolom baru
  • ADD COLUMN: adalah perintah untuk menambahkan kolom ke tabel
  • jenis_kelamin: adalah nama kolom yang akan di tambahkan
  • ENUM: adalah tipe data untuk kolom yang akan di tambahkan
  • ('L','P'): adalah ketentuan untuk enum jenis kelamin yaitu L atau P 
37.Update Data tb_anggota For Column jenis_kelamin

UPDATE tb_anggota set jenis_kelamin ='P' WHERE userid IN ('aida.s','anita.s','cici.s','cinta.s','dewi.s','eni.s','gita.r','hani.s','ida.n','ida.m','jati.s','lia.k','lina.r','lina.s','maya.s','mira.s','nana.f','nisa.f','putri.s','rani.s','sari.a','sari.p','sinta.w','susi.a','tika.s','umi.k','vina.r','vivi.s','xena.f','yani.s','zena.f');

UPDATE tb_anggota set jenis_kelamin ='L' WHERE userid IN ('adi.w','agus.s','anton.n','ari.p','bambang.p','budi.p','deni.a','ega.p','eko.w','fauzi.r','fitra.m','gilang.p','hendra.a','jaka.p','joko.p','joni.s','kiki.m','kunto.p','ogi.r','opik.r','purwanto.p','rio.p','tomo.p','toni.s','udin.p','wawan.s','wira.s','yoga.p','zain.r','zaki.r');

  • UPDATE tb_anggota: Perintah untuk memperbarui nilai di tabel tb_anggota.
  • SET jenis_kelamin = 'L/P': Menetapkan nilai 'L/P' pada kolom jenis_kelamin untuk setiap baris yang memenuhi kondisi.
  • WHERE userid IN (data yang ingin ditambahkan jenis kelamin): untuk menambahkan jenis kelamin pada kolom jenis kelamin menurut `userid` tersebut 
38.Get Data From 3 All Table Sort By Fullname From Tb_anggota Alphabetically

SELECT * FROM tb_anggota AS a LEFT JOIN tb_team AS b ON a.team = b.id_team LEFT JOIN tb_koordinator AS c ON b.id_koordinator = c.id_koordinator ORDER BY a.nama ASC;

  • SELECT * FROM tb_anggota: perintah untuk memilih semua kolom dari tabel tb_anggota.
  • AS a: memberi alias (nama lain) untuk tabel tb_anggota dan disebut dengan alias a. Alias digunakan untuk mempersingkat penulisan nama tabel pada perintah berikutnya.
  • LEFT JOIN tb_team AS b ON a.team = b.id_team: perintah untuk menggabungkan tabel tb_anggota dengan tabel tb_team berdasarkan kolom team pada tabel tb_anggota yang sama dengan kolom id_team pada tabel tb_team. Digunakan left join karena semua anggota harus tercantum bahkan jika mereka tidak memiliki tim. Alias b diberikan untuk tabel tb_team.
  • LEFT JOIN tb_koordinator AS c ON b.id_koordinator = c.id_koordinator: perintah untuk menggabungkan tabel tb_team yang sudah digabungkan dengan tabel tb_koordinator berdasarkan kolom id_koordinator pada tabel tb_team yang sama dengan kolom id_koordinator pada tabel tb_koordinator. Kembali digunakan left join karena tidak semua tim memiliki koordinator. Alias c diberikan untuk tabel tb_koordinator.
  • ORDER BY a.nama ASC: perintah untuk mengurutkan hasil penggabungan tabel berdasarkan kolom nama pada tabel tb_anggota secara ascending (dari yang terkecil ke yang terbesar).

Komentar

Postingan populer dari blog ini

Sejarah Linux

Outer Join

Null - Constraint