我尝试创建一个用户定义的函数,该函数将用户ID作为参数,然后显示该特定行的retailPrice列。你能告诉我哪里出错了吗?
DELIMITER $$
CREATE FUNCTION itemPrice(uId DECIMAL(8,2))
RETURNS DECIMAL(8,2)
READS SQL DATA
BEGIN
DECLARE r DECIMAL(8,2)
SELECT INTO retailPrice r FROM item WHERE userId = uId;
RETURN(r);
END$$
DELIMITER ;
答案 0 :(得分:0)
您在;
语句和DECLARE
查询之间缺少SELECT
。并且INTO
位于查询中的错误位置。
DELIMITER $$
CREATE FUNCTION itemPrice(uId DECIMAL(8,2))
RETURNS DECIMAL(8,2)
READS SQL DATA
BEGIN
DECLARE r DECIMAL(8,2);
SELECT retailPrice INTO r FROM item WHERE userId = uId;
RETURN(r);
END$$
DELIMITER ;