我有一个复杂的请求。我必须在PHP中做如下图所示的报告。 Part summarized yield
必须跨计算填写。 就像我在公式栏中解释的那样,part summarized yield
中的值取自location yield
和part summarized yield
之间的计算。 (见本公式)SQL Server中的交叉计算
如何做到这一点的计算在PHP报告? 我已经尝试使用游标,但它仍然无法正常工作。
这是我的光标计算:
--In PHP file, i make query to insert data first to table tyield_summary
--Cursor to input yield_summary
Declare @nourut varchar(2), @maxnourut varchar(2), @bpnum varchar(20), @pnum varchar(20), @curnourut varchar(2), @psum decimal(18,2), @ysum decimal(18,2)
DECLARE StockCursor CURSOR
FOR
select no_urut, part_number, Part_Summary
from tyield_summary
where no_urut<>'99'
order by part_number desc, no_urut asc
set @bpnum=''
OPEN StockCursor
FETCH NEXT FROM StockCursor INTO @nourut, @pnum, @psum
WHILE @@FETCH_STATUS=0
BEGIN
if @[email protected]
begin
select top 1 @curnourut=no_urut
from tyield_summary
where [email protected]
and no_urut<@nourut
order by no_urut desc
set @[email protected]
select @maxnourut = max(no_urut) from tyield_summary
where [email protected]
update tyield_summary
set yield_summary = case when Part_Summary=0 then @psum else (Part_Summary*@psum)/100 end
where [email protected]
and [email protected]
end
else
begin
set @[email protected]
end
FETCH NEXT FROM StockCursor INTO @nourut, @pnum, @psum
END
CLOSE StockCursor
DEALLOCATE StockCursor
我需要填写使用公式-i显示在Excel part_summary
字段。 在公式显示中,使用交叉字段进行计算。
看到结果你坚持在哪里?请提供表格结构。 –
我已经更新我的文章并提供表格结构。请帮忙 –
将图像作为“表格结构”发布是懒惰的人。无论如何,只需使用您的排序/聚合条件创建一个行号列,然后计算每行* row +1,或者如果没有聚合中实际行的下一个值,只需获取行值。也避免游标 – jean