0
当我处理函数时,我首先需要测试独立的select语句。我做到了,它解决了。我的问题是当我尝试将其转换为函数。在mySQL中完成某项功能时遇到问题
这是select语句,它的作品
select sum(item.retailPrice * orderItem.quantity)
from orderItem
join orders
on orders.orderId = orderItem.orderId
join item
on item.itemId = orderItem.itemId
where orders.orderId = 4
这是我的功能,它提供了错误。
CREATE FUNCTION getTotalPrice(oId int)
RETURNS int
READS SQL DATA
BEGIN
declare total int;
select sum(item.retailPrice * orderItem.quantity) into total
from orderItem
join orders
on orders.orderId = orderItem.orderId
join item
on item.itemId = orderItem.itemId
where orders.orderId = oId
return total;
END$$
该函数应该允许用户输入他们的orderId。
简短的回答是,你真的不应该为这些简单的查询编写函数。 – e4c5
您在“RETURN”上方行末尾缺少分号。 –