MySQL 用联接模式更新

例子

考虑一个称为的生产表questions_mysql和一个表iwtQuestions(导入的工作表),该表代表来自的最后一批导入的CSV数据LOAD DATA INFILE。在导入之前,工作表将被截断,数据将被导入,并且此处未显示该过程。

使用对导入的工作表数据的联接来更新我们的生产数据。

UPDATE questions_mysql q -- our real table for production 
join iwtQuestions i -- imported worktable 
ONi.qId= q.qId
SETq.closeVotes= i.closeVotes,
q.votes = i.votes, 
q.answers = i.answers, 
q.views = i.views;

别名q和i用于缩写表引用。这简化了开发和可读性。

qId主键代表Stackoverflow问题ID。更新了四列以匹配联接中的行。