xxxxxxxxxx
DELIMITER $$
CREATE FUNCTION ufn_count_employees_by_town(town_name VARCHAR(255))
RETURNS INT DETERMINISTIC
BEGIN
DECLARE employee_count INT;
SELECT COUNT(*) INTO employee_count
FROM employees AS e
JOIN addresses AS a ON e.address_id = a.address_id
JOIN towns AS t ON t.town_id = a.town_id
WHERE t.name = town_name;
RETURN employee_count;
END $$
DELIMITER ;