批量后更新库存

时间:2016-08-22 07:59:25

标签: sql-server tsql

我设计了一个新的应用程序。 我使用sQL服务器。所以我有一个问题。 我想要表tbStock caculate,在列tbStock.quality = tbImport.quality - tbExport.quality 但他们必须遵循现场批次。 这是我的代码。不工作

    create proc [dbo].[sp_XuatLayBatch]
    @Ma as nchar(14)

    as
    select sum(tbImport .SoLuong)as SLN,sum(tbExport .SoLuong)as SLX,tbImport .Batch from tbImport, tbExport
    where tbImport .Ma = @Ma and (tbExport.Ma=tbImport .Ma or tbExport.Ma is null)
    group by tbImport .Batch
这是我的照片。 http://www.mediafire.com/view/l5fyiaa8flolgda/Batch_tong_2.JPG

1 个答案:

答案 0 :(得分:0)

我想我明白你的意思是:只是从该特定批次中导入的库存量减去了总出口库存量,以便为您提供该批次剩余的总库存量?

如果是这样的话:

select i.[No]
        ,i.Code
        ,i.Name
        ,i.Quality - isnull(e.Quality,0) as Quality
        ,i.Batch
from tbImport i
    left join (select Code
                        ,Name
                        ,sum(Quality) as Quality
                        ,Batch
                from tbExport
                group by Code
                        ,Name
                        ,Batch
                ) e
        on(i.Code = e.Code
            and i.Name = e.Name
            and i.Batch = e.Batch
            )
 where i.Quality - isnull(e.Quality,0) > 0