我有像
这样的表格太阳风
App Name ISStatus
WP1000 Mohan Y
SP1000 Rohan Y
太阳能
SolarApp Name ISStatus
SP1000 Rohan Y
风
WindApp Name ISStatus
WP1000 mohan Y
如果Appname与表匹配,我需要更新solar和wind的数据 WP1000与wind table匹配然后我需要更新Isstatus ='N' 和 SP1000与solar table匹配然后我需要更新Isstatus ='N' 否则什么都不会更新 当我有日志表时,我需要插入所有已更新的太阳能和风表数据,如
logId appname name ISstatus
1 SP1000 Mohan Y
2 WP1000 Rohan Y
你能建议做什么是最好的方式
答案 0 :(得分:1)
从SQL Server 2005开始,您可以使用'输出到' sql语句的子句。 创建表LOG后,您可以:
UPDATE Solar SET ISSStatus ='N' WHERE Solarapp = 'SP1000'
OUTPUT inserted.appname, inserted.name, deleted.ISSstatus INTO LOG(appname, name,issstatus)
UPDATE Wind SET ISSStatus ='N' WHERE Windapp = 'WP1000'
OUTPUT inserted.appname, inserted.name, deleted.ISSstatus INTO LOG(appname, name,issstatus)
或者您可以将结果输出到临时表中,并将输出的记录合并到另一个表中。在这种情况下,这个额外步骤似乎不是必要的。