You are on page 1of 14

TUGAS 2

PRAKTIKUM PERINTAH SQL PADA MySQL

DISUSUN OLEH:
Nama : LA ODE RAHMAD HIDAYAT
No. Stambuk : 202354
Kelas : 2TSBD-I
Program Studi/Semester : Teknik Informatika/II

UNIVERSITAS DIPA MAKASSAR


2021
PRAKTIKUM 3
1. CREATE TABLE
a. PERINTAH CREATE TABLE CUSTOMER
mysql> CREATE TABLE customer(
-> id_cust INT(11),
-> nama CHAR(20),
-> tgl_daftar DATE,
-> telp CHAR(20));

PERINTAH CREATE TABLE PRODUCT


mysql> CREATE TABLE product(
-> id INT(11),
-> barang CHAR(10),
-> unit CHAR(10),
-> harga INT(11));
2. ALTER TABLE
1. mysql> ALTER TABLE customer ADD alamat CHAR(20);
Query OK, 0 rows affected (0.06 sec)
Records: 0 Duplicates: 0 Warnings: 0

2. mysql> ALTER TABLE customer CHANGE id_cust id_cust INT(11) PRIMARY KEY;
Query OK, 0 rows affected, 1 warning (0.09 sec)
Records: 0 Duplicates: 0 Warnings: 1

3. mysql> ALTER TABLE product CHANGE unit kategori CHAR(15);


Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0

4. mysql> ALTER TABLE product CHANGE harga harga decimal(7,0);


Query OK, 0 rows affected (0.09 sec)
Records: 0 Duplicates: 0 Warnings: 0

3. INSERT TABLE
PRODUCT
mysql> INSERT INTO product(id,barang,kategori,harga) VALUES('1','Sprite','Minuman','3000');
Query OK, 1 row affected (0.01 sec)

mysql> INSERT INTO product(id,barang,kategori,harga) VALUES('2','Jeruk','Buah','2500');


Query OK, 1 row affected (0.01 sec)

mysql> INSERT INTO product(id,barang,kategori,harga)


VALUES('3','TehBotol','Minuman','2000');
Query OK, 1 row affected (0.01 sec)

mysql> INSERT INTO product(id,barang,kategori,harga) VALUES('4','Burger','Makanan','9000');


Query OK, 1 row affected (0.01 sec)

mysql> INSERT INTO product(id,barang,kategori,harga) VALUES('5','Apel','Buah','2000');


Query OK, 1 row affected (0.05 sec)

CUSTOMER

mysql> INSERT INTO customer(id_cust,nama,tgl_daftar,telp,alamat)


VALUES('100','Aladin','2008-05-20','0411321101','Sulawesi 19');
Query OK, 1 row affected, 1 warning (0.05 sec)

mysql> INSERT INTO customer(id_cust,nama,tgl_daftar,telp,alamat)


VALUES('200','Baskoro','2008-06-18','0201071110','Pongtiku 36');
Query OK, 1 row affected, 1 warning (0.01 sec)

mysql> INSERT INTO customer(id_cust,nama,tgl_daftar,telp,alamat)


VALUES('300','Alimin','2008-01-12','1411463756','Baraya 13');
Query OK, 1 row affected, 1 warning (0.00 sec)
mysql> INSERT INTO customer(id_cust,nama,tgl_daftar,telp,alamat) VALUES('400','Joko','2008-
08-15','0812000981','Urip Sumoharjo 1');
Query OK, 1 row affected, 1 warning (0.01 sec)

mysql> INSERT INTO customer(id_cust,nama,tgl_daftar,telp,alamat)


VALUES('500','Rahmah','2008-09-22','0850227783','Perintis 19');
Query OK, 1 row affected, 1 warning (0.01 sec)

4. SELECT
1. mysql> SELECT barang,harga FROM product;

2. mysql> SELECT nama,alamat FROM customer;

3. mysql> SELECT*FROM product;

4. mysql> SELECT*FROM customer;


PRAKTIKUM 4
1. Perintah SQL untuk menampilkan :
a. Semua pegawai yang namanya berawalan huruf Y, K, M
mysql> SELECT*FROM pegawai WHERE nama regexp '^[YKM]';

b. Semua pegawai yang namanya berawalan huruf B dan mengandung huruf u


mysql> SELECT * FROM pegawai WHERE nama LIKE 'B%u%';

c. Semua pegawai yang berulang tahun di bulan 10.


mysql> SELECT*FROM pegawai WHERE MONTH(tglahir)=10;

d. Semua pegawai yang lahir sesudah tahun 1965


mysql> SELECT*FROM pegawai WHERE YEAR(tglahir)>1965;
e. Nama pegawai dan departemen dengan mengurutkan berdasarkan departemen secara
Ascending
mysql> SELECT nama,Depart FROM pegawai ORDER BY Depart ASC;

f. Jumlah pegawai per departemen


mysql> SELECT Depart, COUNT(kota) as Jumlah FROM pegawai GROUP BY Depart;

g. Gaji terbesar setiap departemen


mysql> SELECT Depart, MAX(gapok) FROM pegawai GROUP BY Depart;
2. Ubahlah perintah berkut menggunakan operator BETWEEN
select * from pegawai where year(tglahir) >=1970 and year(tglahir) <=1980

mysql> SELECT*FROM pegawai WHERE YEAR(tglahir) between 1970 AND 1980;


PRAKTIKUM 5
soal A
1. Tampilkan nip, nama, depart, gapok dan pph semua pegawai
(pph = 2.5% dari gapok)
mysql> SELECT nip,nama,Depart,gapok * 0.025 As pph From Pegawai;

2. Tampilkan nama, tglahir, dan umur pegawai pada depart ‘Pemasaran’


mysql> SELECT nama,tglahir, TIMESTAMPDIFF(YEAR, tglahir, CURDATE()) AS umur FROM
pegawai WHERE Depart='Pemasaran';

3. Tampilkan nama pegawai yang termuda pada setiap departemen


mysql> SELECT nama,Depart, MIN(TIMESTAMPDIFF(YEAR, tglahir, CURDATE())) AS umur
FROM pegawai GROUP BY Depart;
4. Tampilkan Total gaji pegawai per Departemen.
mysql> SELECT Depart, sum(gapok) FROM pegawai GROUP BY Depart;

5. Tampilkan Nama pegawai yang umurnya kurang dari 30 tahun.


mysql> SELECT nama,TIMESTAMPDIFF(YEAR, tglahir, CURDATE()) As umur FROM
pegawai WHERE TIMESTAMPDIFF(YEAR, tglahir, CURDATE())<30;

Tidak ada pegawai yang brumur dibawah 30 tahun.

6. Tampilkan Gaji tertinggi pegawai per Departemen


mysql> SELECT nama, Depart, MAX(gapok) FROM pegawai GROUP BY Depart;

JAWABAN SOAL B
1. SELECT nip,nama,gapok,gapok * 0.1 As Bonus From Pegawai Where Jkel=’L’;
Maksud dari perintah SQL di atas yaitu:
Menampilkan nip, nama, gapok dan bonus pegawai yang berjenis kelamin laki-laki, di mana
bonus=gapok*0,1

2. SELECT nama,2007-year(tglahir) as umur from pegawai where


(2007-year(tglahir))>=20;
Maksud dari perintah SQL di atas yaitu:
Menampilkan nama dan umur pegawai dari umur 20 hingga keatas di tahun 2007.

3. SELECT depart,sum(gapok) from pegawai group by Depart;


Maksud dari perintah SQL di atas yaitu:
Menampilkan jumlah gaji pegawai perdepartemen.
4. SELECT nama, gapok FROM pegawai WHERE gapok =(SELECT MAX(gapokFROM
pegawai);
Maksud dari prtintah SQL di atas yaitu:
Menampilkan nama pegawai yang gajinya paling tinggi.

5. SELECT Kota,Coun(*) From Pegawai Group By Kota;


Maksud dari perintah SQL di atas yaitu:
Menampilkan jumlah pegawai perkota.

6. SELECT nip,nama, CASE jkel WHEN ‘L’ THEN ‘Pria’ ELSE ‘Wanita’ END
As Sex FROM pegawai;
Maksud dari perintah SQL di atas yaitu :
menampilkan nip,nama, sex pegawai di mana L adalah Pria dana P adalah wanita.
PRAKTIKUM 6

1. Tampilkan nama sales, nama barang, harga dan jumlah pembelian.


mysql> SELECT nama,nama_brg,harga,jumlah FROM JUAL,BARANG,SALESMAN
-> WHERE JUAL.kd_brg=BARANG.kd_brg AND jual.id_sales=SALESMAN.id_sales;

2. Tampilkan nama-nama Sales yang perempuan tanpa berulang.


mysql> SELECT nama,jkl FROM SALESMAN WHERE jkl="P";

3. Tampilkan tgl jual, nama sales, harga, jumlah dan Jumlah*harga.


mysql> SELECT nama,nama_brg,harga,jumlah,(jumlah*harga) FROM
JUAL,BARANG,SALESMAN
-> WHERE JUAL.kd_brg=BARANG.kd_brg AND jual.id_sales=SALESMAN.id_sales;
4. Hitung banyaknya jumlah penjualan berdasarkan kode barang
mysql> SELECT kd_brg,sum(jumlah) FROM JUAL, SALESMAN
-> WHERE jual.id_sales=SALESMAN.id_sales GROUP by kd_brg;

5. Tampilkan Nama sales dan nama barang yang terjual diatas tgl 1-5-07
mysql> SELECT nama,nama_brg FROM SALESMAN, BARANG, JUAL
-> WHERE tgl_jual>"2007-01-05" AND
-> JUAL.kd_brg=BARANG.kd_brg AND JUAL.id_sales=SALESMAN.id_sales;

6. Tampilkan Nama sales dengan jumlah penjualan terbanyak


mysql> SELECT nama FROM SALESMAN, JUAL
-> WHERE jumlah=(SELECT MAX(jumlah)FROM JUAL) AND
-> JUAL.id_sales=SALESMAN.id_sales;
7. Tampilkan jumlah barang yang terjual untuk masing-masing jenis barang.
mysql> SELECT nama_brg, sum(jumlah) FROM JUAL, BARANG
-> WHERE JUAL.kd_brg=BARANG.kd_brg GROUP BY nama_brg;

8. Tampilkan tgl jual, Nama barang dan nama sales untuk barang dengan jumlah penjualan
diatas 10 unit.
mysql> SELECT tgl_jual,nama,nama_brg FROM JUAL, BARANG, SALESMAN
-> WHERE jumlah>10 AND
-> JUAL.kd_brg=BARANG.kd_brg AND JUAL.id_sales=SALESMAN.id_sales;

9. Tampilkan Nama barang yang terjual pada bulan 5


mysql> SELECT nama_brg FROM BARANG, JUAL
-> WHERE MONTH(tgl_jual)=05 AND
-> JUAL.kd_brg=BARANG.kd_brg;
10. Hitung total penjualan (Jumlah*harga) untuk sales bernama ’Tika’
mysql> SELECT nama_brg, jumlah, jumlah*harga FROM JUAL, BARANG,
SALESMAN
-> WHERE nama="Tika" AND
-> JUAL.kd_brg=BARANG.kd_brg AND JUAL.id_sales=SALESMAN.id_sales;

You might also like