Professional Documents
Culture Documents
Jawab:
CREATE TABLE suppliers (
supplier_id VARCHAR (50) PRIMARY KEY,
supplier_name VARCHAR (50),
join_date DATE);
CREATE TABLE items (
item_id VARCHAR(50) PRIMARY KEY,
item_name VARCHAR(50),
price INT,
stock INT,
supplier_id VARCHAR(50) NOT NULL,
FOREIGN KEY (supplier_id) REFERENCES suppliers
(supplier_id)
);
CREATE TABLE transactions(
transaction_id VARCHAR(50),
order_date DATE,
PRIMARY KEY (transaction_id)
);
CREATE TABLE transaction_item(
transaction_item_id INT PRIMARY KEY,
quantity INT,
transaction_id VARCHAR(50) NOT NULL,
item_id VARCHAR(50) NOT NULL,
FOREIGN KEY (transaction_id) REFERENCES transactions
(transaction_id),
FOREIGN KEY (item_id) REFERENCES items (item_id)
);
a.
INSERT INTO items VALUES
('B01', 'Developer .Net', '6000000', '11', 'SP03'),
('B02', 'Developer Java', '6000000', '10', 'SP02'),
('B03', 'Developer C#', '5500000', '10', 'SP04'),
('B04', 'Developer Python', '5500000', '10', 'SP02');
b.
INSERT INTO suppliers VALUES
('SP01', 'PT. Synnex Metrodata Indonesia', '2018-01-15'),
('SP02', 'PT. Metrodata Indonesia', '2018-01-16'),
('SP03', 'PT. Mitra Informatika Indonesia', '2018-01-16'),
('SP04', 'PT. Metro Mobile', '2018-01-15');
c.
SELECT t.order_date, ti.quantity, i.item_name, i.price,
i.stock, s.supplier_name, s.join_date
FROM transactions as t
RIGHT JOIN transaction_item as ti
USING (transaction_id)
LEFT JOIN items as i
USING (item_id)
LEFT JOIN suppliers as s
USING (supplier_id)
WHERE quantity >= 1;
2. Show Data from table:
Jawab:
a.
b.
C.
3. Show data from table and add due date 14 days from Order
Date.
Jawab:
SELECT t.transaction_id as nomor_faktur,SUM(quantity*price)
as total_faktur, t.order_date as tanggal_faktur
, date_add(t.order_date, INTERVAL 14 DAY) as jatuh_tempo
FROM transactions as t
INNER JOIN transaction_item as ti
USING (transaction_id)
LEFT JOIN items
USING (item_id)
GROUP BY transaction_id;
a.
b.