DELIMITER //
CREATE FUNCTION Kol_Dney(d1 DATE, d2 DATE)
RETURNS INT
DETERMINISTIC
BEGIN
RETURN DATEDIFF(d2, d1);
END //
DELIMITER ;
DELIMITER //
CREATE FUNCTION NazvM(mes INT)
RETURNS VARCHAR(20)
DETERMINISTIC
BEGIN
RETURN CASE mes
WHEN 1 THEN 'январь'
WHEN 2 THEN 'февраль'
WHEN 3 THEN 'март'
WHEN 4 THEN 'апрель'
WHEN 5 THEN 'май'
WHEN 6 THEN 'июнь'
WHEN 7 THEN 'июль'
WHEN 8 THEN 'август'
WHEN 9 THEN 'сентябрь'
WHEN 10 THEN 'октябрь'
WHEN 11 THEN 'ноябрь'
WHEN 12 THEN 'декабрь'
ELSE 'неизвестно'
END;
END //
DELIMITER ;
DELIMITER //
CREATE FUNCTION YearMonth(d DATE)
RETURNS VARCHAR(7)
DETERMINISTIC
BEGIN
RETURN DATE_FORMAT(d, '%Y-%m');
END //
DELIMITER ;