4

我对 SQL 中的函数很陌生,我想创建一个函数来将 MySQL 表中的值与以前的值进行比较,但我不知道该怎么做。

例如(iId 是输入值)

声明 pVal INT(20);
声明 val INT(20);

从 Id=iId 的产品中选择价格进入 pVal;

从产品中选择价格;

如果价格 == pVal 那么
SET val = 价格;
万一;

谢谢

4

1 回答 1

1

我不知道如何在表上运行选择查询,然后从该函数返回,一旦它们被操作就会返回多个值。此外,我不确定您是否可以在返回多行的函数中运行 SELECT 查询。第一个答案是你不能返回一个数据数组,或者我认为一个函数不止一行。因此,我认为最好的方法是创建一个返回新数据集的临时表。

例子

如果存在employeeTemp,则删除临时表;
   创建临时表employeeTemp AS
   选择 ID,开始日期
    来自员工;

其次,答案是肯定的,您可以在函数内运行 SELECT 查询以返回多行。

抱歉,我对 MySQL 函数很陌生。

于 2010-03-16T16:15:10.243 回答