A MySQL Stored Function is a database object that accepts input parameters, performs calculations or logic, and returns a single value. Stored functions are commonly used inside SQL queries such as SELECT, WHERE, and ORDER BY.
-- Basic structure of a stored function
CREATE FUNCTION function_name(parameters)
RETURNS data_type
DETERMINISTIC
BEGIN
RETURN value;
END;
-- Function to add two numbers
DELIMITER $$
CREATE FUNCTION add_numbers(a INT, b INT)
RETURNS INT
DETERMINISTIC
BEGIN
RETURN a + b;
END$$
DELIMITER ;
-- Function to calculate final price with tax
DELIMITER $$
CREATE FUNCTION final_price(price DECIMAL(10,2))
RETURNS DECIMAL(10,2)
DETERMINISTIC
BEGIN
RETURN price + (price * 0.18);
END$$
DELIMITER ;
-- Using stored functions in SELECT query
SELECT add_numbers(10, 20) AS total;
SELECT final_price(1000) AS amount_with_tax;
add_numbers(10, 20) returns 30final_price(1000) returns 1180.00WHERE clause