Сопоставьте 2 столбца sql if =, затем обновите другой столбец на 1
Мне нужно посмотреть, есть ли соответствие между тем, что кто-то подал в одной таблице, в другую таблицу в базе данных.
Я не могу понять, как его настроить. Что я пытаюсь для
IF tableA column A = tableB column B then table A column C = Column C + 1.
Я пробовал метод обновления, но это, похоже, не работает для меня. Любая помощь будет большой. Спасибо.
Ответы
Ответ 1
Как правило, это будет:
UPDATE TABLE_A a JOIN TABLE_B b
ON a.join_col = b.join_col AND a.column_a = b.column_b
SET a.column_c = a.column_c + 1
Значение join_col
, скорее всего, user_id, так что вы только обновляете строки в TABLE_A
, где тот же самый пользователь имеет то же значение в TABLE_B
.
Ответ 2
Я думаю, вы можете сделать это в mysql:
UPDATE TableA a, TableB b
SET a.ColumnC = ColumnC + 1
WHERE a.ColumnA = b.ColumnB;
Ответ 3
если это то, что вы хотите
update tableA set colA=(select (case when b.colB=colA then colC+1 else colC end) from tableB b)