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」上方行末尾缺少分號。 –