我想输入以下函数来计算phpmyadmin中mysql表中完成的任务数,但它始终返回无描述性错误:
DELIMITER $$
CREATE FUNCTION `num_completed`(v1 INT)
RETURNS INT
BEGIN
DECLARE icm INT;
SELECT SUM(IF(completed='yes',1,0)) AS completed INTO icm FROM ri_t_course_progress WHERE enrollment_id=v1;
RETURN icm;
END$$
查询本身应该是正确的。我已经对其进行测试,并返回期望的结果。有人知道怎么了吗?
最佳答案
您需要将SELECT的结果分配给变量。这是一种方法:
SELECT SUM(IF(completed='yes',1,0)) INTO icm
FROM ri_t_view_course_progress WHERE enrollment_id=v1;
关于mysql - 使用phpmyadmin创建mysql函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14751483/