获取MY SQL语法错误也不确定我的方法是否正确。
一个表中的matchScore应该基于以下条件更新为另一表:
100-> 0
97-99-> .1
95-96-> .2
create table A(id int, matchScore int, PRIMARY KEY(id))
create table b(id, int, matchScore double, PRIMARY KEY(id))
UPDATE
b
SET
[b.matchScore] = (CASE WHEN A.matchScore = 100 THEN 0 END)
FROM
b,
A
where
A.id = b.id
A中的100应为b中的0
97-99如果A中的值是97、98,99,则b中的值应为.1
95-96如果值是95,则A中的值为96,那么b中的值应为.2
最佳答案
您可以在下面尝试更新查询-
UPDATE b
INNER JOIN a ON b.id = a.id
SET b.matchScore = CASE WHEN a.matchScore = 100 THEN 0
WHEN a.matchScore between 97 and 99 then .1
WHEN a.matchScore between 95 and 96 then .2 END;
Here是小提琴。