Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 需要通过连接2个表进行更新查询_Php_Mysql - Fatal编程技术网

Php 需要通过连接2个表进行更新查询

Php 需要通过连接2个表进行更新查询,php,mysql,Php,Mysql,我需要帮助找出可能的解决办法。我在这个问题上结巴了 表1-hs\U hr\U员工 emp_编号 雇员身份证 emp_姓氏 加入日期 表2-人力厅休假权利 emp_编号 天数小数点后19,15 使用小数点8,4的天数 使用天数 离开类型 我需要加入这些表,并获得加入日期,并使用0.5加法进行更新。如果差分电流dt-dt。大于10的连接 这是我的问题 UPDATE ohrm_leave_entitlement SET no_of_days = no_of_days + 0.5 WHERE

我需要帮助找出可能的解决办法。我在这个问题上结巴了

表1-hs\U hr\U员工

emp_编号 雇员身份证 emp_姓氏 加入日期 表2-人力厅休假权利

emp_编号 天数小数点后19,15 使用小数点8,4的天数 使用天数 离开类型 我需要加入这些表,并获得加入日期,并使用0.5加法进行更新。如果差分电流dt-dt。大于10的连接

这是我的问题

 UPDATE ohrm_leave_entitlement
 SET no_of_days = no_of_days + 0.5
 WHERE 
 ( 
     ohrm_leave_entitlement.emp_number = hs_hr_employee.emp_number
     AND 
     hs_hr_employee.joined_date < DATE_SUB( NOW(), INTERVAL 10 DAY)
     AND
     leave_type_id=2
 ) 
但是它不起作用

UPDATE  ohrm_leave_entitlement a
        INNER JOIN hs_hr_employee b
            ON a.emp_number = b.emp_number
SET     a.leave_type_id = a.leave_type_id + 0.5
WHERE   DATEDIFF(NOW(), b.joined_date) > 10
您可以在下面尝试:

UPDATE ohrm_leave_entitlement , hs_hr_employee
SET ohrm_leave_entitlement.leave_type_id = ohrm_leave_entitlement.leave_type_id + 0.5
WHERE ohrm_leave_entitlement.emp_number = hs_hr_employee.emp_number
AND hs_hr_employee.joined_date < DATE_SUB( NOW(), INTERVAL 10 DAY)
您可以使用以下选项:

   UPDATE ohrm_leave_entitlement
    SET leave_type_id = leave_type_id + 0.5
    WHERE  
     ohrm_leave_entitlement.emp_number IN (SELECT  hs_hr_employee.emp_number FROM hs_hr_employee 
    WHERE  hs_hr_employee.joined_date < DATE_SUB( NOW(), INTERVAL 10 DAY))