
MYSQL,如何比对两个表,进行单列替换
我用navicat9,MYSQL5的库。A和B两个表,想先从A表中X1列(从第一行开始)取值,查找B表中X2列数值与其相同的那行。如果找到,那么将B表该行的Y2列数值与A...
我用navicat9,MYSQL5的库。
A和B两个表,想先从A表中X1列(从第一行开始)取值,查找B表中X2列数值与其相同的那行。
如果找到,那么将B表该行的Y2列数值与A表的第一行Y1列的数值进行比对,若两者数值不同,就用A表的数值替换掉B表的。
如果找不到,还是A表X1列换第二行取值继续。。。直至A表最后一行,结束。
相当于修改员工奖金资料:
取AB表员工ID相同的那行进行比对,如果二者奖金那列数值一样,不做修改。如果不一样
就用A表的数据替换掉B表的。
注:两个表的ID列,奖金列,列的名字都不一样。 展开
A和B两个表,想先从A表中X1列(从第一行开始)取值,查找B表中X2列数值与其相同的那行。
如果找到,那么将B表该行的Y2列数值与A表的第一行Y1列的数值进行比对,若两者数值不同,就用A表的数值替换掉B表的。
如果找不到,还是A表X1列换第二行取值继续。。。直至A表最后一行,结束。
相当于修改员工奖金资料:
取AB表员工ID相同的那行进行比对,如果二者奖金那列数值一样,不做修改。如果不一样
就用A表的数据替换掉B表的。
注:两个表的ID列,奖金列,列的名字都不一样。 展开
2个回答
展开全部
UPDATE B SET (Y2)=(SELECT Y1 FROM A WHERE A.IDA=B.IDB) WHERE B.Y2<>A.Y1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询