unitario
unitario

Reputation: 6535

Why is my MySQL function returning NULL?

Function:

DELIMITER $$

DROP FUNCTION IF EXISTS `ToYear` $$
CREATE FUNCTION .`ToYear` (input varchar(47)) RETURNS year
BEGIN
  RETURN year(str_to_date(@input,_utf8'%m/%d/%Y'));
END $$

DELIMITER ;

Function call

SELECT ToYear('8/12/2013')

Why is it my function is returning NULL when put into a SELECT statement it returns the year?

SELECT year(str_to_date('8/12/2013',_utf8'%m/%d/%Y'));

Returns: 2013

Upvotes: 0

Views: 127

Answers (1)

Strawberry
Strawberry

Reputation: 33945

DELIMITER $$

DROP FUNCTION IF EXISTS `ToYear` $$
CREATE FUNCTION `ToYear` (input char(10)) RETURNS year
BEGIN
  RETURN year(str_to_date(input,_utf8'%m/%d/%Y'));
END $$

DELIMITER ;

Upvotes: 2

Related Questions