错误信息就不说了,mysql的错误信息就那么几条,可以执行一下看下,求高手帮忙解答!
CREATE FUNCTION fn_GetLevel(zxsc int(11)) RETURNS int(11)
BEGIN
  DECLARE memberlevel INT;    
  CASE 
  WHEN(zxsc<120) THEN
      SET memberlevel=0;
  WHEN(zxsc>=120 AND zxsc<120*1.5)  THEN
     SET memberlevel=1;   
  WHEN(zxsc>=120*1.5 AND zxsc<120*POW(1.5,2))  THEN
     SET memberlevel=2;    
  WHEN(zxsc>=120*POW(1.5,2) AND zxsc<120*POW(1.5,3))  THEN
     SET memberlevel=3;   
  WHEN(zxsc>=120*POW(1.5,3) AND zxsc<120*POW(1.5,4))  THEN
     SET memberlevel=4;   
  WHEN(zxsc>=120*POW(1.5,4) AND zxsc<120*POW(1.5,5))  THEN
     SET memberlevel=5;   
  WHEN(zxsc>=120*POW(1.5,5) AND zxsc<120*POW(1.5,6))  THEN
     SET memberlevel=6;   
  WHEN(zxsc>=120*POW(1.5,6) AND zxsc<120*POW(1.5,7))  THEN
     SET memberlevel=7;   
  WHEN(zxsc>=120*POW(1.5,7) AND zxsc<120*POW(1.5,8))  THEN
     SET memberlevel=8;   
  WHEN(zxsc>=120*POW(1.5,8) AND zxsc<120*POW(1.5,9))  THEN
     SET memberlevel=9;   
  WHEN(zxsc>=120*POW(1.5,10) AND zxsc<120*POW(1.5,11))  THEN
     SET memberlevel=10;   
  WHEN(zxsc>=120*POW(1.5,11) AND zxsc<120*POW(1.5,12))  THEN
     SET memberlevel=11;   
  WHEN(zxsc>=120*POW(1.5,12) AND zxsc<120*POW(1.5,13))  THEN
     SET memberlevel=12;   
  WHEN(zxsc>=120*POW(1.5,13) AND zxsc<120*POW(1.5,14))  THEN
     SET memberlevel=13;   
  WHEN(zxsc>=120*POW(1.5,14) AND zxsc<120*POW(1.5,15))  THEN
     SET memberlevel=14;   
  WHEN(zxsc>=120*POW(1.5,15) AND zxsc<120*POW(1.5,16))  THEN
     SET memberlevel=15; 
  ELSE
     SET memberlevel=16;        
  END;
RETURN memberlevel;
END;