Assignment 15 SQL
Assignment 15 SQL
Solution:-
CREATE OR REPLACE FUNCTION Calculate_Price (
P_Product_ID IN NUMBER,
P_Quantity IN NUMBER
) RETURN NUMBER IS
v_unit_price NUMBER(10, 2);
v_discount NUMBER(5, 2);
v_final_price NUMBER(10, 2);
BEGIN
SELECT Unit_Price
INTO v_unit_price
FROM Product
WHERE Product_ID = P_Product_ID;
SELECT Discount
INTO v_discount
FROM Promotions
WHERE Product_ID = P_Product_ID
AND SYSDATE BETWEEN StartDate AND EndDate;
RETURN v_final_price;
EXCEPTION
WHEN NO_DATA_FOUND THEN
v_final_price := v_unit_price * P_Quantity;
RETURN v_final_price;