3

我想看看某人在一个表中提交的内容是否与数据库中的另一个表相匹配。我不太清楚如何设置它。我想要的是

  IF tableA column A = tableB column B then table A column C = Column C + 1. 

我已经尝试过更新方法,但这似乎对我不起作用。任何帮助都会很棒。谢谢。

4

3 回答 3

4

一般会是这样的:

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

于 2013-03-04T17:00:43.030 回答
2

我想你可以在mysql中做到这一点:

UPDATE TableA a, TableB b 
SET a.ColumnC = ColumnC + 1 
WHERE a.ColumnA = b.ColumnB; 
于 2013-03-04T16:59:57.787 回答
1

如果这是你想要的

update tableA set colA=(select (case when b.colB=colA then colC+1 else colC end) from tableB b)
于 2013-03-04T17:03:54.607 回答