Utiliser :
DROP FUNCTION IF EXISTS `example`.`test` $$
CREATE FUNCTION `example`.`test` (param INT) RETURNS VARCHAR(32)
BEGIN
DECLARE new_username VARCHAR(32);
SELECT `username`
INTO new_username
FROM `users`
WHERE `ID` = param;
RETURN COALESCE(new_username, 'Username not found');
END $$
N'oubliez pas que la longueur VARCHAR de la valeur RETURN correspond à la variable, qui doit correspondre à la longueur de colonne que vous souhaitez renvoyer.