MySQL函数使用一个select声明2个变量

时间:2015-05-31 11:18:06

标签: mysql mysql-workbench create-function

我想知道如何通过使用1个select语句创建一个声明2个变量的MySQL函数。 像这样:

CREATE FUNCTION  `inHashtagCampaign` (campaignId INT,startDateTime DATETIME,endDateTime DATETIME)
RETURNS TEXT
LANGUAGE SQL
DETERMINISTIC
BEGIN 
    DECLARE result TEXT;
    DECLARE limit BIGINT(11); 
    DECLARE suspended TINYINT(1);
    #
    #I don't know how to do this, but I'd like to use the result of this query:
    #
    result = SELECT `limit`,`suspended` FROM `settings` WHERE `campaignId` = 2;
    limit = result.limit;
    suspended = result.suspended;
END;

我知道这个功能还远未完成,但我已经有点坚持这件事了。

1 个答案:

答案 0 :(得分:0)

我认为你要做的就像这样

DECLARE @limit BIGINT(11); 
DECLARE @suspended TINYINT(1);

SELECT @limit := `limit`, @suspended := `suspended` FROM `settings` 
WHERE `campaignId` = 2;

(OR)

DECLARE limit1 BIGINT(11); 
DECLARE suspended1 TINYINT(1);

SELECT `limit`,`suspended` into limit1, suspended1
FROM `settings` WHERE `campaignId` = 2;