我有这个数据库,里面有这些记录(我只是为了测试将要实现到我自己的数据库中的UPDATE查询而完成的)

我的更新查询有问题,但首先这是这样的:


用户表


工资表


出席表


部门表


因此,当我运行查询时,我打算根据用户的工作时间来修改薪水表中的所有记录,由于我什至无法执行此基本查询,因此现在我将不使用数据列。
这是我失败的尝试的样子:

第一次尝试:

update table salary
      set salary.sum = presence.id_presence * 5
      FROM salary INNER JOIN users1 INNER JOIN salary WHERE id_salary = id_presence


第2次尝试(建议):

     UPDATE salary, presence
  SET salary.sum = SUM(presence.hours) * 5
WHERE presence.id = salary.id


第3次尝试:

更新工资
  SET薪金总和=(
     SELECT SUM(出席时间)* 5
     来自用户,状态
     WHEREPresence.id =薪水.id



我真的需要一些帮助,我无法理解失败之处

最佳答案

多亏了一个好人

答:

UPDATE salary
  SET sum = (
     SELECT SUM(presence.hours) * 5
     FROM user, presence
     WHERE presence.id = salary.id
  )

关于mysql - MySQL更新查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23036315/

10-13 08:56