Sql server 2008 Sql:不同列的减法公式?
我正试图在SQL Server中编写一个公式,用以减去两个不同表的表2的Sql server 2008 Sql:不同列的减法公式?,sql-server-2008,sql-server-2005,c#-4.0,Sql Server 2008,Sql Server 2005,C# 4.0,我正试图在SQL Server中编写一个公式,用以减去两个不同表的表2的[amountspend]列和表1的[Amount]列的值,并更新[Amount]列的余额。你知道吗 提前感谢您……我认为,假设您在两个表之间有可靠的外键关系,下面的方法将起作用 UPDATE [table1] SET [table1].[Amount] = [table1].[Amount] - [table2].[AmountSpent] FROM [table1] INNER JOIN [table2] ON [tab
[amountspend]
列和表1的[Amount]
列的值,并更新[Amount]列的余额。你知道吗
提前感谢您……我认为,假设您在两个表之间有可靠的外键关系,下面的方法将起作用
UPDATE [table1]
SET [table1].[Amount] = [table1].[Amount] - [table2].[AmountSpent]
FROM
[table1] INNER JOIN
[table2] ON
[table1].[KeyField] = [table2].[KeyField]
假设两个表之间有可靠的外键关系,我认为下面的方法可以奏效
UPDATE [table1]
SET [table1].[Amount] = [table1].[Amount] - [table2].[AmountSpent]
FROM
[table1] INNER JOIN
[table2] ON
[table1].[KeyField] = [table2].[KeyField]
我明白了………谢谢@james Osborn
create procedure SP_Subtraction
(
@EmpID int
)
as
begin
UPDATE PTS_BalanceTracker
SET PTS_BalanceTracker.Balance_BalanceAmount = PTS_BalanceTracker.Balance_BalanceAmount - PTS_Transactions.Transaction_Amount
FROM
PTS_BalanceTracker INNER JOIN
PTS_Transactions ON
PTS_BalanceTracker.Emp_ID = @EmpID
end
我明白了………谢谢@james Osborn
create procedure SP_Subtraction
(
@EmpID int
)
as
begin
UPDATE PTS_BalanceTracker
SET PTS_BalanceTracker.Balance_BalanceAmount = PTS_BalanceTracker.Balance_BalanceAmount - PTS_Transactions.Transaction_Amount
FROM
PTS_BalanceTracker INNER JOIN
PTS_Transactions ON
PTS_BalanceTracker.Emp_ID = @EmpID
end
对于关系数据库,一般建议不要存储计算结果,除非有特定的性能原因。存储的计算总是有可能出错。对于关系数据库,一般建议不要存储计算结果,除非有特定的性能原因。存储的计算总是有可能不正确。