我需要一些mssql的帮助。我不知道任何来自mssql查询,但我知道一些编程。在某些情况下修改表的值
我有2个表,表A和表B每一个有2列 ColumnA1,ColumnA2,ColumnB1和ColumnB2
像这样的事情
create table DB.dbo.TableA
(ColumnA1 varchar(10),
ColumnA2 int)
create table DB.dbo.TableB
(ColumnB1 varchar(10),
ColumnB2 int)
,我需要检查是否存在表A中的一行其中ColumnA2> 0
如果是这样,则
如果这些可能行中的任何行也存在于ColumnB1中,则
更新ColumnB2 = ColumnB2 + ColumnA2并设置ColumnA2 = 0
ELSE
插入TableB中的新行ColumnB1 = ColumnA1和ColumnB2 = ColumnA1并设置ColumnA2 = 0
我甚至不知道从哪里开始,我尝试以最好的方式解释它。
编辑: 脚本
TableA:
ColumnA1 ColumnA2
John 0
Sam 1
Mark 1
TableB:
ColumnB1 ColumnB2
Sam 5
之前之后的脚本应该是这样的:
TableA:
ColumnA1 ColumnA2
John 0
Sam 0
Mark 0
TableB:
ColumnB1 ColumnB2
Sam 6
Mark 1
都与对方2个表? – praveen 2012-07-24 10:56:41
都在同一个数据库,我不知道它是否可能,但修改一个不会修改其他 – 2012-07-24 10:59:12