【问题标题】:if condition in mysql functionmysql函数中的if条件
【发布时间】:2015-10-14 13:10:04
【问题描述】:

如何用三个不同的参数调用if函数.like

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

【问题讨论】:

  • 你能发布完整的查询吗?
  • 也许你在问如何使用函数If?如果是这样,试试这个MySql If Function,这个函数接受三个参数,你可以在过程之外的查询中使用它。

标签: mysql join


【解决方案1】:
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 ;

【讨论】:

  • 我已将“root”作为用户名,将“localhost”作为数据库主机。您必须使用正确的用户名和主机名。如果是本地数据库,则为“localhost”,否则您必须使用数据库的 IP 地址。用户名也应该存在。
猜你喜欢
  • 1970-01-01
  • 2022-01-21
  • 2022-01-08
  • 1970-01-01
  • 1970-01-01
  • 2012-11-30
  • 2019-11-22
  • 2018-12-09
  • 2013-09-21
相关资源
最近更新 更多