求两表批量更新sql语句
完成更新a表和b表,最好用一个sql语句完成,不可以的话就更新a表一个语句,更新b表一个语句。
基础是a表和b表的Category都一样为x
一、根据b表更新a表,要求:
1、若b表中存在与a表中aID相同的bID且aCheck是1就将aValidate更新为1,aCheck 不是1就将aValidate更新为3。
2、若b表中不存在与a表中aID相同的bID且aCheck是1就将aValidate更新为2,aCheck不是1就将aValidate更新为4。
二、根据a表更新b表,要求:
1、若a表中存在与b表中bID相同的aID且aCheck是1就将bValidate更新为1,aCheck 不是1就将bValidate更新为3。
2、若a表中不存在与b表中bID相同的aID且aCheck是1就将bValidate更新为2。
示例数据:
更新前
a: b:
aID aCheck Category aValidate bID Validate Category
1 1 x null 1 null x
2 1 x null 3 null x
6 2 x null 7 null x
7 3 x null 8 null x
8 3 x null 9 null x
9 1 y null 10 null y
更新后:
a:
aID aCheck aValidate Category