Pengantar Bahasa Query:Tugas 2: Difference between revisions
Appearance
| Line 303: | Line 303: | ||
*[https://www.pengembangan-web-mp-pd.com/id/sql-server-2005/cara-menambah-nilai-kolom-bilangan-bulat-dengan-1-di-sql/942490848/amp/ pengembangan-web-mp-pd.com] | *[https://www.pengembangan-web-mp-pd.com/id/sql-server-2005/cara-menambah-nilai-kolom-bilangan-bulat-dengan-1-di-sql/942490848/amp/ pengembangan-web-mp-pd.com] | ||
*[https://kelasprogrammer.com/perintah-dasar-sql/ kelasprogrammer.com] | *[https://kelasprogrammer.com/perintah-dasar-sql/ kelasprogrammer.com] | ||
*[https://www.zpkomputer.com/2017/01/operator-aritmatika-mysql.html zpkomputer.com] | |||
Revision as of 16:27, 16 March 2022
sudo mariadb -u root
CREATE DATABASE mustain;
use mustain;
CREATE TABLE karyawan ( nama varchar(25), pekerjaan varchar(25), gaji long, mkerja int );
INSERT INTO karyawan(nama, pekerjaan, gaji, mkerja) values ('SUNARDI', 'STAF AHLI', 1500000, 3);
INSERT INTO karyawan(nama, pekerjaan, gaji, mkerja) values ('AHMAD ZAENUDIN', 'DIREKTUR', 5000000, 8);
INSERT INTO karyawan(nama, pekerjaan, gaji, mkerja) values ('JOKO MARTADI', 'ADMINISTRASI', 800000, 2);
INSERT INTO karyawan(nama, pekerjaan, gaji, mkerja) values ('SUKOTJO', 'KEAMANAN', 500000, 3);
INSERT INTO karyawan(nama, pekerjaan, gaji, mkerja) values ('ANDI SANYOTO', 'PEMBUKUAN', 1000000, 4);
INSERT INTO karyawan(nama, pekerjaan, gaji, mkerja) values ('SANTOSO', 'ADMINISTRASI', 1200000, 6);
INSERT INTO karyawan(nama, pekerjaan, gaji, mkerja) values ('MARIYANTI', 'STAF AHLI', 2000000, 1);
INSERT INTO karyawan(nama, pekerjaan, gaji, mkerja) values ('RATMANTO', 'KEAMANAN', 750000, 4);
INSERT INTO karyawan(nama, pekerjaan, gaji, mkerja) values ('MAHENDRA', 'SALESMAN', 1000000, 6);
INSERT INTO karyawan(nama, pekerjaan, gaji, mkerja) values ('PARMADI BUDI', 'ADMINISTRASI', 2000000, 7);
INSERT INTO karyawan(nama, pekerjaan, gaji, mkerja) values ('INDAH MULYONO', 'SEKRETARIS', 3000000, 5);
INSERT INTO karyawan(nama, pekerjaan, gaji, mkerja) values ('ARIS HARYANTO', 'STAF AHLI', 1800000, 3);
INSERT INTO karyawan(nama, pekerjaan, gaji, mkerja) values ('SARAJAYA', 'SALESMAN', 1200000, 1);
INSERT INTO karyawan(nama, pekerjaan, gaji, mkerja) values ('GUNARSO HALIM', 'STAF AHLI', 1500000, 1);
Perintah Select
- Menampilkan Semua field
select * from karyawan;
Output
+----------------+--------------+---------+--------+ | nama | pekerjaan | gaji | mkerja | +----------------+--------------+---------+--------+ | SUNARDI | STAF AHLI | 1500000 | 3 | | AHMAD ZAENUDIN | DIREKTUR | 5000000 | 8 | | JOKO MARTADI | ADMINISTRASI | 800000 | 2 | | SUKOTJO | KEAMANAN | 500000 | 3 | | ANDI SANYOTO | PEMBUKUAN | 1000000 | 4 | | SANTOSO | ADMINISTRASI | 1200000 | 6 | | MARIYANTI | STAF AHLI | 2000000 | 1 | | RATMANTO | KEAMANAN | 750000 | 4 | | MAHENDRA | SALESMAN | 1000000 | 6 | | PARMADI BUDI | ADMINISTRASI | 2000000 | 7 | | INDAH MULYONO | SEKRETARIS | 3000000 | 5 | | ARIS HARYANTO | STAF AHLI | 1800000 | 3 | | SARAJAYA | SALESMAN | 1200000 | 1 | | GUNARSO HALIM | STAF AHLI | 1500000 | 1 | +----------------+--------------+---------+--------+
- Tampilkan yang namanya di awali dengan huruf depan S
select * from karyawan where nama like 'S%';
Output
+----------+--------------+---------+--------+ | nama | pekerjaan | gaji | mkerja | +----------+--------------+---------+--------+ | SUNARDI | STAF AHLI | 1500000 | 3 | | SUKOTJO | KEAMANAN | 500000 | 3 | | SANTOSO | ADMINISTRASI | 1200000 | 6 | | SARAJAYA | SALESMAN | 1200000 | 1 | +----------+--------------+---------+--------+
- Tampilkan yang pekerjaannya STAF AHLI
SELECT * FROM karyawan WHERE pekerjaan = 'STAF AHLI';
Output
+---------------+-----------+---------+--------+ | nama | pekerjaan | gaji | mkerja | +---------------+-----------+---------+--------+ | SUNARDI | STAF AHLI | 1500000 | 3 | | MARIYANTI | STAF AHLI | 2000000 | 1 | | ARIS HARYANTO | STAF AHLI | 1800000 | 3 | | GUNARSO HALIM | STAF AHLI | 1500000 | 1 | +---------------+-----------+---------+--------+
- Tampilkan yang gajinya dibawah 1000000
SELECT * FROM karyawan where gaji<1000000;
Output
+--------------+--------------+--------+--------+ | nama | pekerjaan | gaji | mkerja | +--------------+--------------+--------+--------+ | JOKO MARTADI | ADMINISTRASI | 800000 | 2 | | SUKOTJO | KEAMANAN | 500000 | 3 | | RATMANTO | KEAMANAN | 750000 | 4 | +--------------+--------------+--------+--------+
- Tampilkan yang gajinya diatas 3000000
SELECT * FROM karyawan where gaji>3000000;
Output
+----------------+-----------+---------+--------+ | nama | pekerjaan | gaji | mkerja | +----------------+-----------+---------+--------+ | AHMAD ZAENUDIN | DIREKTUR | 5000000 | 8 | +----------------+-----------+---------+--------+
- Tampilkan gajinya antara 2000000 - 4000000
SELECT * FROM karyawan where gaji between 2000000 and 4000000;
Output
+---------------+--------------+---------+--------+ | nama | pekerjaan | gaji | mkerja | +---------------+--------------+---------+--------+ | MARIYANTI | STAF AHLI | 2000000 | 1 | | PARMADI BUDI | ADMINISTRASI | 2000000 | 7 | | INDAH MULYONO | SEKRETARIS | 3000000 | 5 | +---------------+--------------+---------+--------+
- Tampilkan data yang pekerjaannya ADMINISTRASI atau STAF AHLI
SELECT * FROM karyawan WHERE pekerjaan = 'ADMINISTRASI' OR pekerjaan = 'STAF AHLI';
Output
+---------------+--------------+---------+--------+ | nama | pekerjaan | gaji | mkerja | +---------------+--------------+---------+--------+ | SUNARDI | STAF AHLI | 1500000 | 3 | | JOKO MARTADI | ADMINISTRASI | 800000 | 2 | | SANTOSO | ADMINISTRASI | 1200000 | 6 | | MARIYANTI | STAF AHLI | 2000000 | 1 | | PARMADI BUDI | ADMINISTRASI | 2000000 | 7 | | ARIS HARYANTO | STAF AHLI | 1800000 | 3 | | GUNARSO HALIM | STAF AHLI | 1500000 | 1 | +---------------+--------------+---------+--------+
- Tampilkan yang masa kerjanya diatas >5 tahun dan gajinya diatas 4.000.000
SELECT * FROM karyawan where mkerja>5 AND gaji>4000000;
Output
+----------------+-----------+---------+--------+ | nama | pekerjaan | gaji | mkerja | +----------------+-----------+---------+--------+ | AHMAD ZAENUDIN | DIREKTUR | 5000000 | 8 | +----------------+-----------+---------+--------+
- Tampilkan yang Namanya berhuruf depan S dan Gaji nya kurang <1000000
SELECT * FROM karyawan where nama like 'S%' AND gaji<1000000;
Output
+---------+-----------+--------+--------+ | nama | pekerjaan | gaji | mkerja | +---------+-----------+--------+--------+ | SUKOTJO | KEAMANAN | 500000 | 3 | +---------+-----------+--------+--------+
- Tampilkan yang gajinya diatas >1000000 dan Masa Kerjanya >4 th
SELECT * FROM karyawan where gaji>1000000 AND mkerja>4;
Output
+----------------+--------------+---------+--------+ | nama | pekerjaan | gaji | mkerja | +----------------+--------------+---------+--------+ | AHMAD ZAENUDIN | DIREKTUR | 5000000 | 8 | | SANTOSO | ADMINISTRASI | 1200000 | 6 | | PARMADI BUDI | ADMINISTRASI | 2000000 | 7 | | INDAH MULYONO | SEKRETARIS | 3000000 | 5 | +----------------+--------------+---------+--------+
- Gantilah yang pekerjaannya KEAMANAN menjadi SATPAM
UPDATE karyawan SET pekerjaan = REPLACE(pekerjaan, "KEAMANAN", "SATPAM");
Output
+----------------+--------------+---------+--------+ | nama | pekerjaan | gaji | mkerja | +----------------+--------------+---------+--------+ | SUNARDI | STAF AHLI | 1500000 | 3 | | AHMAD ZAENUDIN | DIREKTUR | 5000000 | 8 | | JOKO MARTADI | ADMINISTRASI | 800000 | 2 | | SUKOTJO | SATPAM | 500000 | 3 | | ANDI SANYOTO | PEMBUKUAN | 1000000 | 4 | | SANTOSO | ADMINISTRASI | 1200000 | 6 | | MARIYANTI | STAF AHLI | 2000000 | 1 | | RATMANTO | SATPAM | 750000 | 4 | | MAHENDRA | SALESMAN | 1000000 | 6 | | PARMADI BUDI | ADMINISTRASI | 2000000 | 7 | | INDAH MULYONO | SEKRETARIS | 3000000 | 5 | | ARIS HARYANTO | STAF AHLI | 1800000 | 3 | | SARAJAYA | SALESMAN | 1200000 | 1 | | GUNARSO HALIM | STAF AHLI | 1500000 | 1 | +----------------+--------------+---------+--------+
- Nama AHMAD ZAENUDIN seharusnya SLAMET ACHMAD perbaikilah
UPDATE karyawan SET nama ='SLAMET ACHMAD' WHERE nama='AHMAD ZAENUDIN';
Output
+---------------+--------------+---------+--------+ | nama | pekerjaan | gaji | mkerja | +---------------+--------------+---------+--------+ | SUNARDI | STAF AHLI | 1500000 | 3 | | SLAMET ACHMAD | DIREKTUR | 5000000 | 8 | | JOKO MARTADI | ADMINISTRASI | 800000 | 2 | | SUKOTJO | SATPAM | 500000 | 3 | | ANDI SANYOTO | PEMBUKUAN | 1000000 | 4 | | SANTOSO | ADMINISTRASI | 1200000 | 6 | | MARIYANTI | STAF AHLI | 2000000 | 1 | | RATMANTO | SATPAM | 750000 | 4 | | MAHENDRA | SALESMAN | 1000000 | 6 | | PARMADI BUDI | ADMINISTRASI | 2000000 | 7 | | INDAH MULYONO | SEKRETARIS | 3000000 | 5 | | ARIS HARYANTO | STAF AHLI | 1800000 | 3 | | SARAJAYA | SALESMAN | 1200000 | 1 | | GUNARSO HALIM | STAF AHLI | 1500000 | 1 | +---------------+--------------+---------+--------+
- Karyawan yang bernama SANTOSO dan SURAJAYA mengundurkan diri, hapuslah datanya.
DELETE from karyawan WHERE nama = 'SANTOSO' OR nama='SARAJAYA';
Output
+---------------+--------------+---------+--------+ | nama | pekerjaan | gaji | mkerja | +---------------+--------------+---------+--------+ | SUNARDI | STAF AHLI | 1500000 | 3 | | SLAMET ACHMAD | DIREKTUR | 5000000 | 8 | | JOKO MARTADI | ADMINISTRASI | 800000 | 2 | | SUKOTJO | SATPAM | 500000 | 3 | | ANDI SANYOTO | PEMBUKUAN | 1000000 | 4 | | MARIYANTI | STAF AHLI | 2000000 | 1 | | RATMANTO | SATPAM | 750000 | 4 | | MAHENDRA | SALESMAN | 1000000 | 6 | | PARMADI BUDI | ADMINISTRASI | 2000000 | 7 | | INDAH MULYONO | SEKRETARIS | 3000000 | 5 | | ARIS HARYANTO | STAF AHLI | 1800000 | 3 | | GUNARSO HALIM | STAF AHLI | 1500000 | 1 | +---------------+--------------+---------+--------+
- Tampilkan data NAMA, JABATAN dan GAJI yang jabatannya STAF AHLI
SELECT nama,pekerjaan,gaji FROM karyawan WHERE pekerjaan='STAF AHLI';
Output
+---------------+-----------+---------+ | nama | pekerjaan | gaji | +---------------+-----------+---------+ | SUNARDI | STAF AHLI | 1500000 | | MARIYANTI | STAF AHLI | 2000000 | | ARIS HARYANTO | STAF AHLI | 1800000 | | GUNARSO HALIM | STAF AHLI | 1500000 | +---------------+-----------+---------+
- Tampilkan data NAMA dan GAJI dimana gaji sudah naik 3%
select nama, gaji + (0.03*gaji) From karyawan;
Output
+---------------+--------------------+ | nama | gaji + (0.03*gaji) | +---------------+--------------------+ | SUNARDI | 1545000 | | SLAMET ACHMAD | 5150000 | | JOKO MARTADI | 824000 | | SUKOTJO | 515000 | | ANDI SANYOTO | 1030000 | | MARIYANTI | 2060000 | | RATMANTO | 772500 | | MAHENDRA | 1030000 | | PARMADI BUDI | 2060000 | | INDAH MULYONO | 3090000 | | ARIS HARYANTO | 1854000 | | GUNARSO HALIM | 1545000 | +---------------+--------------------+
- Terjadi pergantian tahun, semua Masa Kerja bertambah 1 tahun dan semua GAJI naik 10% perbaikilah datanya.
- Menambah Masa kerja 1 tahun
update karyawan set mkerja = mkerja + 1;
- Menaikkan gaji 10%
update karyawan set gaji = gaji + (0.10*gaji);
Output
+---------------+--------------+-----------+--------+ | nama | pekerjaan | gaji | mkerja | +---------------+--------------+-----------+--------+ | SUNARDI | STAF AHLI | 1650001.1 | 4 | | SLAMET ACHMAD | DIREKTUR | 5500001.1 | 9 | | JOKO MARTADI | ADMINISTRASI | 880001.1 | 3 | | SUKOTJO | SATPAM | 550001.1 | 4 | | ANDI SANYOTO | PEMBUKUAN | 1100001.1 | 5 | | MARIYANTI | STAF AHLI | 2200001.1 | 2 | | RATMANTO | SATPAM | 825001.1 | 5 | | MAHENDRA | SALESMAN | 1100001.1 | 7 | | PARMADI BUDI | ADMINISTRASI | 2200001.1 | 8 | | INDAH MULYONO | SEKRETARIS | 3300001.1 | 6 | | ARIS HARYANTO | STAF AHLI | 1980001.1 | 4 | | GUNARSO HALIM | STAF AHLI | 1650001.1 | 2 | +---------------+--------------+-----------+--------+