MySQL错误#1415-不允许从函数返回结果集

时间:2018-11-05 09:37:52

标签: mysql sql

我的问题是关于一个仅返回一个值的函数,但是我仍然遇到此错误,所以我应该得到的是订单日期和发货日期之间的平均天数,查询正在执行此操作并且仅返回一个我平均值。如果仅在函数的外部使用SELECT语句,则得到的行/行答案为8.4920。

请问该如何解决。谢谢。

DELIMITER //
DROP FUNCTION IF EXISTS OrderFulfilmel//

CREATE FUNCTION  OrderFulfilmel(average int) RETURNS DOUBLE Deterministic
BEGIN

SELECT AVG(DATEDIFF(ShippedDate, OrderDate)) AS averageDay

FROM Orders;

END//
DELIMITER ;

2 个答案:

答案 0 :(得分:0)

您可以在下面尝试

Example<User> example = Example.of(User.builder().firstName("Mike").build());
long count = userRepository.count(example);
System.out.println(count);

答案 1 :(得分:0)

我不明白为什么您的函数会有参数。所以,我在想:

DELIMITER //
DROP FUNCTION IF EXISTS OrderFulfilmel//

CREATE FUNCTION  OrderFulfilmel ()
    RETURNS DOUBLE Deterministic
BEGIN
    DECLARE @diff DOUBLE;

    SELECT @diff := AVG(DATEDIFF(ShippedDate, OrderDate)) AS averageDay
    FROM Orders;

    RETURN @diff;
END//
DELIMITER ;