当使用mysql在另一个字段中发生更改时,如何将字段值更改为NULL

时间:2012-11-22 10:12:09

标签: mysql database

我是mysql的新手。任何人都可以帮我解决这个问题,

“我的表中有以下列emp id,name,leaveto,leavefrom和status。如果员工申请休假,他的经理可以接受或拒绝。如果经理已经接受了休假,那么状态归档将包含值为Approved(同样被拒绝)。我想知道的是,当员工第二次申请休假时,leaveto和leavefrom列会更新,但状态字段保持不变。“

当leaveto和leavefrom列中有更新时,是否可以将status字段设为NULL。

这将通过比较其ID和经理ID来更新员工的状态字段(批准/拒绝)。如果该员工属于经理“A”,则只有经理“A”可以批准/拒绝。

"UPDATE leave_details join managerlogin on managerlogin.manager_id=leave_details.manager_id SET leave_details.leave_status='Approved' where (employee_id='$myemployee_id' and managerlogin.manager_id= '".$_SESSION['mymanager_id']."' )";

3 个答案:

答案 0 :(得分:0)

是的,可以将值更新为NULL。

Update tablename set columnname=null where put your condition...

答案 1 :(得分:0)

你可以

update mytable
set status = null,
    leaveto = ...
where emp_id = 17;

答案 2 :(得分:0)

以下是为NULL

设置Satatus的代码
UPDATE mytable SET status = null WHERE empid = '17'

试试吧......


将条件置于更新

if($_POST['leavefrom'] || $_POST['leaveto'])
{
    $status == "NULL";
}

UPDATE mytable SET status = '$status' WHERE empid = '17'

通过使用此条件,您可以在leavefrom和leaveto设置值时将Null值设置为Status。