简体   繁体   English

为什么我的MySQL函数返回NULL?

[英]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语句时返回NULL,它返回年份?

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

Returns: 2013 回报: 2013

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 ;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM