我有一个名为items的表,该表具有列itemId(int),retailPrice(decimal(8,2)和title(varchar)

我试图在mySQL中创建一个用户定义的函数,该函数接受itemId作为输入并返回该商品的零售价。

但是,每次尝试使用select时,它都会返回我选择的itemId的价格,但会列出item表中的每一行。我希望它只返回相对于itemId的1行

到目前为止,我有这段代码

CREATE FUNCTION itemPrice (itId DECIMAL(8,2))
RETURNS DECIMAL(8,2)
READS SQL DATA
BEGIN
 declare rp decimal(8,2);
 select retailPrice into rp from item
 where itemId = itId
 return (rp);
END$$


我究竟做错了什么?

最佳答案

尝试

select itemId, title, itemPrice(#)
from item
where itemid = #

关于mysql - 如何使用选择返回UDF中的一行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37450455/

10-12 13:53