Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.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
Mysql 在sql中更新列中的两个或多个值_Mysql_Sql - Fatal编程技术网

Mysql 在sql中更新列中的两个或多个值

Mysql 在sql中更新列中的两个或多个值,mysql,sql,Mysql,Sql,我不知道为什么这不起作用,但给你 update delievery set status = 'delivered' where order_num = 'a563' and order_num = 'a109'; 如果要运行此操作,则会更新0行 当然,我可以单独做这件事,但是如果我需要更新两件以上的东西,那将不是非常有效。您需要使用或和要求满足这两个条件 update delievery set status = 'delivered' where order_num = 'a563' or

我不知道为什么这不起作用,但给你

update delievery
set status = 'delivered'
where order_num = 'a563'
and order_num = 'a109';
如果要运行此操作,则会更新0行


当然,我可以单独做这件事,但是如果我需要更新两件以上的东西,那将不是非常有效。

您需要使用
<代码>和要求满足这两个条件

update delievery
set status = 'delivered'
where order_num = 'a563'
or order_num = 'a109';
您也可以像这样在中使用

update delievery
set status = 'delivered'
where order_num IN ('a563', 'a109');

您需要使用
<代码>和
要求满足这两个条件

update delievery
set status = 'delivered'
where order_num = 'a563'
or order_num = 'a109';
您也可以像这样在
中使用

update delievery
set status = 'delivered'
where order_num IN ('a563', 'a109');
你必须使用“或”

update delievery set status = 'delivered' 
where order_num = 'a563' or order_num = 'a109';

你必须使用“或”

update delievery set status = 'delivered' 
where order_num = 'a563' or order_num = 'a109';


您使用
编写了查询,这意味着使用它编写的两个条件必须为真。这里的条件是
order\u num='a563'
order\u num='a109'
。现在,如果查看表,您将在整个表中看不到列
order_num
同时包含值
a563
a109
的行

一次只有一个值。因此,这两个条件永远不会同时得到满足,因此不会更新任何行


您应该在查询中使用
而不是
。因为它将检查任何一个条件是否为真,所以更新值。因此,在一行中,
order_num
列的值将是
a563
,在另一行中它将是
a109
,因此两者都将被更新。

您已经使用
编写了查询,
它仅仅意味着用它编写的两个条件都必须是真的。这里的条件是
order\u num='a563'
order\u num='a109'
。现在,如果查看表,您将在整个表中看不到列
order_num
同时包含值
a563
a109
的行

一次只有一个值。因此,这两个条件永远不会同时得到满足,因此不会更新任何行


您应该在查询中使用
而不是
。因为它将检查任何一个条件是否为真,所以更新值。因此,在一行中,
order_num
列的值将是
a563
,在另一行中,它将是
a109
,因此这两个列都将更新。

谢谢。我认为既然它们都需要改变,就需要“和”。谢谢你的澄清,谢谢。我认为既然它们都需要改变,就需要“和”。谢谢你的澄清。谢谢,很好的解释,如果有人认为这是一个愚蠢的错误,我很抱歉question@dragonore不客气!不必感到抱歉!我们在这里学习。:)谢谢,很好的解释,如果有人认为这是一个愚蠢的错误,很抱歉question@dragonore不客气!不必感到抱歉!我们在这里学习。:)如果他们中的任何人解决了您的问题,您应该在此处接受答案:)如果他们中的任何人解决了您的问题,您应该在此处接受答案:)