Mysql更新设置所有null,然后在一个查询中设置id所在的列

Mysql更新设置所有null,然后在一个查询中设置id所在的列,mysql,Mysql,是否可以先将所有值设置为null,然后在单个查询中设置值 换言之,在单个查询中可以实现这一点: UPDATE table SET column = NULL; UPDATE table SET column = 'value' WHERE id = 'id'; 您可以使用大小写表达式执行此操作: UPDATE table SET column = CASE WHEN id = 'id' THEN 'value' END; 这将仅将id='id'行中的列更新为值'value',并且所有其他行

是否可以先将所有值设置为null,然后在单个查询中设置值

换言之,在单个查询中可以实现这一点:

UPDATE table SET column = NULL;
UPDATE table SET column = 'value' WHERE id = 'id';

您可以使用
大小写
表达式执行此操作:

UPDATE table 
SET column = CASE WHEN id = 'id' THEN 'value' END;

这将仅将
id='id'
行中的列
更新为值
'value'
,并且所有其他行将设置为
null

您可以使用
CASE
表达式执行此操作:

UPDATE table 
SET column = CASE WHEN id = 'id' THEN 'value' END;

这将只将
column
行中的
id='id'
更新为
'value'
,所有其他行将设置为
null

它与php和eloquent有什么关系?你想要一个php/eloquent中的解决方案吗?@FelippeDuarte Update tags将在php/eloquent中实现,但只有查询就足够了。你可以使用一个case语句,但我不清楚第二个更新在做什么。它与php和eloquent有什么关系?你想要一个php/eloquent中的解决方案吗?@FelippeDuarte更新标签将在php/eloquent中实现,但只有查询就足够了。你可以使用case语句,但我不清楚第二次更新在做什么。