Sei sulla pagina 1di 6

Based On Business Rules in Case Study

The following input has been identified based on the requirement study done by Top Electronic and
the Relational Database :

Tables Attributes
Brand BrandID, BrandName
Type TypeID, TypeName
Staff StaffID, StaffName
Customer CustomerID, CustName, CustAddress, CustPhone, CustEmail
Warehouse WarehouseID, WarehouseName, Waddress, WPhone, WEmail, StaffID
Product ProductID, BrandID, PModelNumber, typeID , PWarranty, PRetail_Price,
WarehouseID
Purchasing Purchasing_No, PurchaseDt, PurchaseTotal, CustomerID
PurchasingDetails Purchasing_No, ProductID, Quantity

CREATE TABLE BRAND


(
BrandID VARCHAR (5) NOT NULL PRIMARY KEY,
BrandName VARCHAR (25) NOT NULL
);

INSERT INTO BRAND (BRANDID, BRANDNAME) VALUES ('SK101','SAMSUNG');


INSERT INTO BRAND (BRANDID, BRANDNAME) VALUES ('TJ100','TOSHIBA');
INSERT INTO BRAND (BRANDID, BRANDNAME) VALUES ('SM101','SHARP');
INSERT INTO BRAND (BRANDID, BRANDNAME) VALUES ('PM099','PENSONIC');
INSERT INTO BRAND (BRANDID, BRANDNAME) VALUES ('KM010','KHIND');

CREATE TABLE TYPEPRODUCT


(
TypeID VARCHAR (5) NOT NULL PRIMARY KEY,
TypeName VARCHAR (25) NOT NULL
);

INSERT INTO TYPEPRODUCT (TYPEID, TYPENAME) VALUES ('WM010', 'INTELL. WASHING MACHINE');
INSERT INTO TYPEPRODUCT (TYPEID, TYPENAME) VALUES ('RC005', 'RICE COOKER');
INSERT INTO TYPEPRODUCT (TYPEID, TYPENAME) VALUES ('TV999', 'SMART TV');
INSERT INTO TYPEPRODUCT (TYPEID, TYPENAME) VALUES ('AC006', 'HYBRID AIRCON');
INSERT INTO TYPEPRODUCT (TYPEID, TYPENAME) VALUES ('MC102', 'MICROWAVE');
CREATE TABLE STAFF
(
StaffID VARCHAR (5) NOT NULL PRIMARY KEY,
StaffName VARCHAR (25) NOT NULL
);

INSERT INTO STAFF (STAFFID, STAFFNAME) VALUES ('00600','AHMAD BIN ABU');


INSERT INTO STAFF (STAFFID, STAFFNAME) VALUES ('00551','FENG SIE LAN');
INSERT INTO STAFF (STAFFID, STAFFNAME) VALUES ('00500','RAMU A/L SIVAGI');
INSERT INTO STAFF (STAFFID, STAFFNAME) VALUES ('00444','TAN AH KEOW');
INSERT INTO STAFF (STAFFID, STAFFNAME) VALUES ('00484','SARAH LEE');

CREATE TABLE CUSTOMER


(
CustomerID VARCHAR (5) NOT NULL PRIMARY KEY,
CustName VARCHAR (25) NOT NULL,
CustAddress VARCHAR (25) NULL,
CustPhone VARCHAR (12) NULL,
CustEmail VARCHAR(20) NULL
);

INSERT INTO CUSTOMER (CUSTOMERID, CUSTNAME, CUSTADDRESS, CUSTPHONE, CUSTEMAIL)


VALUES ('C0101', 'RUZAINI OMAR', ’38, JALAN KENANGA, TAMAN UDA’,
‘+60132031473’, ’ruzaini@gmail.com’);
INSERT INTO CUSTOMER VALUES ('C0010', 'AHMAD FARID ZAKARIA', ’APT-2,BLOK C, MALURI DESA’,
’+60127031466’, ’faridz@gmail.com’);
INSERT INTO CUSTOMER VALUES ('C0011', 'SARAH FEI MEI', ’APT-3,BLOK A, MALURI KOTA’,
’+60127031900’, ’sarahfm@gmail.com’);
INSERT INTO CUSTOMER VALUES ('C0016', 'SIVAGI MURUGAM', ’238, JALAN TEBU, TAMAN UDA’,
’+60127031787’, ’sivagim@gmail.com’);
INSERT INTO CUSTOMER VALUES ('C0888', 'YAHAYA ABD RAHIM', ’39, JALAN ANTOI, JOHOR BAHRU’,
’+60132031472’, ’yahaya1970@gmail.com’);
CREATE TABLE WAREHOUSE
(
WarehouseID VARCHAR (5) NOT NULL PRIMARY KEY,
WarehouseName VARCHAR (15) NOT NULL,
WAddress VARCHAR (25) NULL,
WPhone VARCHAR (12) NULL,
Wemail VARCHAR (20) NULL,
StaffID VARCHAR (5) NOT NULL,
CONSTRAINT FK_StaffID FOREIGN KEY (StaffID) REFERENCES STAFF (StaffID)
);

INSERT INTO WAREHOUSE (WAREHOUSEID, WAREHOUSENAME, WADDRESS, WPHONE, WEMAIL,


STAFFID) VALUES
('W0101','GUDANG AH KIM', ‘ 202, JALAN GUDANG’,
'+60122031473’, ‘kimwarehouse@gmail.com’, ‘00600’);
INSERT INTO WAREHOUSE VALUES ('W0102', 'GUDANG BANGSA', ‘ 22, JALAN KILANG’,
'+60122031473', ‘bangsakita@gmail.com’, ‘00484’);
INSERT INTO WAREHOUSE VALUES ('W0103', 'KILANG TAN', ‘1202, JALAN PERUSAHAAN’,
'+60122031473', ‘kilangTan@gmail.com’, ‘00500’);
INSERT INTO WAREHOUSE VALUES ('W0105', 'GUDANG SRI DEWI', ‘2, JALAN SME 3, TMN IKS’,
'+60122032443', ‘srideviwarehouse@gmail.com’, ‘00551’);
INSERT INTO WAREHOUSE VALUES ('W0111', 'PERUSAHAAN ALIBABA', ‘132, JALAN SME 5, TMN IKS’,
'+60122031444', ‘alibabamalaysia@gmail.com’, ‘00444’);

CREATE TABLE PRODUCT


(
ProductID VARCHAR (5) NOT NULL PRIMARY KEY,
PmodelNumber VARCHAR (5) NOT NULL,
Pwarranty NUMBER NULL,
Pretail_Price FLOAT (7,2) NOT NULL,
BrandID VARCHAR (5) NOT NULL,
TypeID VARCHAR (5) NOT NULL,
WarehouseID VARCHAR (5) NOT NULL,
CONSTRAINT FK_BrandID FOREIGN KEY (BRANDID) REFERENCES BRAND (BRANDID),
CONSTRAINT FK_TypeID FOREIGN KEY (TYPEID) REFERENCES TYPEPRODUCT (TYPEID),
CONSTRAINT FK_WarehouseID FOREIGN KEY (WAREHOUSEID) REFERENCES WAREHOUSE
(WAREHOUSEID)
);

INSERT INTO PRODUCT (PRODUCTID, PMODELNUMBER, PWARRANTY, PRETAIL_PRICE, BRANDID,


TYPEID, WAREHOUSEID) VALUES
('PD101', 'MG100', 36, 5000.00, ‘TJ100’, 'WM010', ‘W0102’);
INSERT INTO PRODUCT VALUES ('PD111', 'FM123', 24, 1250.00, 'PM099', 'MC102', 'W0103');
INSERT INTO PRODUCT VALUES ('PD121', 'TV333', 12, 2000.00, 'SK101', ‘TV999’, ‘W0111’);
INSERT INTO PRODUCT VALUES ('PD131', 'ABC12', 36, 1000.00, ‘SK101’, 'AC006', 'W0105');
INSERT INTO PRODUCT VALUES ('PD141', 'XX121', 12, 550.00, 'KM010', ‘RC005’ , 'W0111');
CREATE TABLE PURCHASING
(
Purchasing_No VARCHAR (5) NOT NULL PRIMARY KEY,
PurchaseDt DATE NOT NULL,
PurchaseTotal FLOAT (6,2) NOT NULL,
CustomerID VARCHAR (5) NOT NULL,
CONSTRAINT FK_CustomerID FOREIGN KEY (CustomerID) REFERENCES CUSTOMER (CustomerID)
);

INSERT INTO PURCHASING (PURCHASING_NO, PURCHASEDT, PURCHASETOTAL, CUSTOMERID)


VALUES ('P0001', '26-02-2019', 2000.00, 'C0010');
INSERT INTO PURCHASING VALUES ('P0002', '26-02-2019', 2050.00, 'C0101');
INSERT INTO PURCHASING VALUES ('P0005', '26-02-2019', 3010.00, 'C0011');
INSERT INTO PURCHASING VALUES ('P0006', '27-02-2019', 3636.00, 'C0888');
INSERT INTO PURCHASING VALUES ('P0013', '27-02-2019', 1000.00, 'C0016');

CREATE TABLE PURCHASINGDETAILS


(
Purchasing_No VARCHAR (5) NOT NULL foreign key,
ProductID VARCHAR (5) NOT NULL,
Quantity NUMBER NOT NULL,
CONSTRAINT FK_Purchasing_No FOREIGN KEY (Purchasing_No) REFERENCES
PURCHASING (Purchasing_No),
CONSTRAINT FK_ProductID FOREIGN KEY (ProductID) REFERENCES PRODUCT (ProductID)
);

INSERT INTO PURCHASINGDETAILS (PURCHASING_NO, PRODUCTID, QUANTITY)


VALUES ('P0001', 'PD101', 2);
INSERT INTO PURCHASINGDETAILS VALUES ('P0006', 'PD111', 1);
INSERT INTO PURCHASINGDETAILS VALUES ('P0013', 'PD121', 2);
INSERT INTO PURCHASINGDETAILS VALUES ('P0002', 'PD121', 1);
INSERT INTO PURCHASINGDETAILS VALUES ('P0005', 'PD131', 3);
The SQL queries to retrieve the following data:

i. The detail of all Product that categories based on Warehouse.


SELECT * FROM PRODUCT GROUP BY WAREHOUSEID;

ii. Gives the Staff Name who works at ‘PERUSAHAAN ALIBABA’.


SELECT S.STAFFNAME W.WAREHOUSENAME FROM STAFF S WAREHOUSE W WHERE
S.STAFFID = W.STAFFID AND W.WAREHOUSENAME = ‘PERUSAHAAN ALIBABA’;

SELECT STAFFNAME FROM STAFF S


WHERE S.STAFFID = (SELECT W.STAFFID FROM WAREHOUSE W
WHERE W.WAREHOUSENAME = ‘PERUSAHAAN ALIBABA’);

iii. List of the customers that purchase total equal or more than 3000.00.

iv. List in the alphabetically order by Customer Name who buy the product
'MICROWAVE'.

v. What is the average warranty from the product list?

Potrebbero piacerti anche