Click here to Skip to main content
15,886,026 members
Please Sign up or sign in to vote.
5.00/5 (1 vote)
SQL
Alter Proc K_RT_BranchWiseBirdsStock
@branch varchar(50)

as
begin

select  ROW_NUMBER() OVER(ORDER BY a.branch) as sno,b.sno as keys,
d.branch,a.transferbirds,b.noofbirds,c.noofbirds,e.mortality,
(a.transferbirds-b.noofbirds-c.noofbirds-e.mortality) as finalbirds from
K_RT_RetailsDetails a
inner join K_RT_WarehouseDetails b on a.branch = b.branch
inner join K_RT_MasterBirdsTransferDet c on a.branch = c.frombranch
inner join K_RT_MasterRetailStores d on d.sno = a.branch
inner join K_RT_DailyEntry e on e.branch = d.sno
where d.branch = @branch

update K_RT_RetailsDetails set transferbirds = finalbirds where branch = @branch
end


here i want to fill the column transferbirds = finalbirds...here finalbirds is a alias name.how can i update that column..please help me
Posted

SQL
Update a
Set K_RT_RetailsDetails = (a.transferbirds-b.noofbirds-c.noofbirds-e.mortality) 
From K_RT_RetailsDetails a
inner join K_RT_WarehouseDetails b on a.branch = b.branch
inner join K_RT_MasterBirdsTransferDet c on a.branch = c.frombranch
inner join K_RT_MasterRetailStores d on d.sno = a.branch
inner join K_RT_DailyEntry e on e.branch = d.sno
where d.branch = @branch
 
Share this answer
 
Comments
Maciej Los 20-Dec-13 7:38am    
On the first look: it should works perfectly.
+5!
Try something like that:
SQL
UPDATE t1 SET t1.transferbirds = t2.finalbirds
FROM K_RT_RetailsDetails AS t1 INNER JOIN (
    select  ROW_NUMBER() OVER(ORDER BY a.branch) as sno,b.sno as keys,
        d.branch,a.transferbirds,b.noofbirds,c.noofbirds,e.mortality,
        (a.transferbirds-b.noofbirds-c.noofbirds-e.mortality) as finalbirds
    from K_RT_RetailsDetails a
        inner join K_RT_WarehouseDetails b on a.branch = b.branch
        inner join K_RT_MasterBirdsTransferDet c on a.branch = c.frombranch
        inner join K_RT_MasterRetailStores d on d.sno = a.branch
        inner join K_RT_DailyEntry e on e.branch = d.sno
    where d.branch = @branch
) AS t2 ON t1.t1.KeyField = t2.KeyField


Note: Replace KeyField with Identity field (with uniqe values) in K_RT_RetailsDetails.
 
Share this answer
 
Comments
TrushnaK 20-Dec-13 7:18am    
nice My 5+
Maciej Los 20-Dec-13 7:37am    
THank you ;)

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900