这问题很简单 但是我不会 呜呜
CREATE FUNCTION GetJXCTJRuKu
(
@cpid int,
@tjrq datetime
)
RETURNS float
AS
BEGINdeclare @ruku floatselect @ruku=(select RuKuShuLiang,JinJia
from dbo.RuKuMingXi
where ShangHuChanPinID=@cpid and RuKuRiqi=@tjrq
)RETURN
(
select @ruku
)
end上面是我建函数的代码 代码很简单 但是 报错:消息 116,级别 16,状态 1,过程 GetJXCTJRuKu,第 17 行
当没有用 EXISTS 引入子查询时,在选择列表中只能指定一个表达式。我发现是因为查询语句 查询了2个字段的原因 (我建了个只查询1个字段却成功了) 还有就是 我这段代码 如果你在系统数据库master运行的话 他能运行成功 但是用自己的数据库的话 就不行了
CREATE FUNCTION GetJXCTJRuKu
(
@cpid int,
@tjrq datetime
)
RETURNS float
AS
BEGINdeclare @ruku floatselect @ruku=(select RuKuShuLiang,JinJia
from dbo.RuKuMingXi
where ShangHuChanPinID=@cpid and RuKuRiqi=@tjrq
)RETURN
(
select @ruku
)
end上面是我建函数的代码 代码很简单 但是 报错:消息 116,级别 16,状态 1,过程 GetJXCTJRuKu,第 17 行
当没有用 EXISTS 引入子查询时,在选择列表中只能指定一个表达式。我发现是因为查询语句 查询了2个字段的原因 (我建了个只查询1个字段却成功了) 还有就是 我这段代码 如果你在系统数据库master运行的话 他能运行成功 但是用自己的数据库的话 就不行了
from dbo.RuKuMingXi
where ShangHuChanPinID=@cpid and RuKuRiqi=@tjrq这里选择了两个列 明显是错误的
(
@cpid int,
@tjrq datetime
)
RETURNS float
AS
BEGIN
declare @ruku floatselect @ruku=RuKuShuLiang * JinJia
from dbo.RuKuMingXi
where ShangHuChanPinID=@cpid and RuKuRiqi=@tjrqRETURN @ruku
END
我是要获得 RuKuShuLiang 和 JinJia 2个字段的值 而不是要他们积啊
该怎么改啊