0

我在 TiDB 中运行这些代码:

CREATE FUNCTION `FN_UP_TRADEDAY`(
endDay int(11),
upDays int(11),
marketx varchar(20)
) RETURNS int(11)
READS SQL DATA
BEGIN

declare beginDay int(11);
declare days int(11) default upDays-1;

select
day into beginDay
from t_tradeday
where market = marketx and day <= endDay
order by day desc limit days, 1;

RETURN beginDay;
END;

但我无法创建函数并收到错误消息:“[Err] 1105 - line 1 column 15 near FN_UP_TRADEDAY”。为什么?

4

1 回答 1

1

我没有找到关于在 TiDB 中创建函数的具体描述,所以我可以假设使用的是 SQL 的标准语法。

所以,你不应该' 在函数名中使用引号。返回后有 string READS SQL DATA,看起来像是注释,所以在--前面添加,以便转义它。

于 2018-08-02T10:24:43.400 回答