这是优化MySQL查询的正确方法吗?

  $sql="update users_contain 
  set
  wood_max      =   (Select building_production from building_level where merge_id=$subPrimaryKey and empire_id=$user_empireID) ,
  iron_max      =   wood_max,
  clay_max      =   wood_max
  where user_id =   $user_id";

现在有一个问题.

wood_max将始终比iron_max和clay_max更新.所以用这种方式安全吗?
当我知道它对所有三个字段具有相同的值时,我不想使用内部查询来更新iron_max和clay_max.

最佳答案 根据此文档,您的UPDATE语句按您的要求工作:
http://dev.mysql.com/doc/refman/5.1/en/ansi-diff-update.html

测试它是肯定的,但我认为你很好.

点赞