如果在mysql函数中有条件

时间:2015-10-14 13:10:05

标签: mysql join

如果调用if函数有三个不同的参数。像

`get_Eingehende_Anrufe_overall`('startdatum','Enddatum'), else `get_Eingehende_Anrufe_topic`(Campaign,'startdatum','Enddatum'),
`get_Eingehende_Anrufe_teams`(id,'startdatum','Enddatum') 

1 个答案:

答案 0 :(得分:0)

if else command in mysql is like this:

IF (condition1) THEN
  get_Eingehende_Anrufe_overall('startdatum','Enddatum');
ELSEIF (condition2) THEN
  get_Eingehende_Anrufe_topic(Campaign,'startdatum','Enddatum');
ELSE
  get_Eingehende_Anrufe_teams(id,'startdatum','Enddatum') ;
END IF;

...如果你想在一个函数中使用它;

DELIMITER // 
CREATE DEFINER='root'@'localhost' FUNCTION get_Eingehende_Anrufe_all
(
  cond INT(2), 
  id INT(4),
  Startdatum Varchar(255),
  Enddatum Varchar(255)
) 
RETURNS int(15) 
BEGIN 
  declare RETURNVAL integer(15); 
  IF (cond = 1) THEN 
    SET RETURNVAL =    get_Eingehende_Anrufe_overall('Startdatum','Enddatum'); 
  ELSEIF (cond = 2) THEN 
    SET RETURNVAL = get_Eingehende_Anrufe_topic(Campaign,'Startdatum','Enddatum'); 
  ELSE 
    SET RETURNVAL = get_Eingehende_Anrufe_teams(id,'Startdatum','Enddatum'); 
  END IF ; 
  RETURN RETURNVAL;
  END//
DELIMITER ;