DELIMITER $$DROP FUNCTION IF EXISTS `gb`.`return_first`$$CREATE DEFINER=`group`@`%` FUNCTION `return_first`(words varchar(512)) RETURNS varchar(256)
   BEGIN
 declare  resultsql varchar(256);
 declare  res char(1); 
 select en_us into resultsql from hzpy where zh_cn = words ;
 #set @res = left(resultsql,1);
         #return @res;
         return resultsql;
    END$$DELIMITER ;当我输入一个 中 字时(表hzpy 里的 中 对应 的en_us 为zhong) ,,得到的结果应该为zhong啊,为什么为null呢?如果上处错误解决后,那么
去掉注释后,  declare  resultsql varchar(256);
 declare  res char(1); 
 select en_us into resultsql from hzpy where zh_cn = words ;
 set @res = left(resultsql,1);
         return @res;
想要得到的是应该是 z 吧?  

解决方案 »

  1.   

    测试
    DELIMITER $$DROP FUNCTION IF EXISTS `gb`.`return_first`$$CREATE DEFINER=`group`@`%` FUNCTION `return_first`(words varchar(512)) RETURNS varchar(256)
      BEGIN
    declare  resultsql varchar(256);
    declare  res char(1);
    select en_us into resultsql from hzpy where zh_cn = words ;
    #set @res = left(resultsql,1);
            #return @res;
            return resultsql;
        END$$DELIMITER ;结果正确,应该是没有查找到记录