Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/71.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无线值查询:重置所有值并更改一个_Mysql_Sql_Database - Fatal编程技术网

Mysql无线值查询:重置所有值并更改一个

Mysql无线值查询:重置所有值并更改一个,mysql,sql,database,Mysql,Sql,Database,我有两个查询,其中第一个查询将所有字段置为零,第二个查询将更新列,但我希望这些查询先进入on query change cover_image=0,然后进入cover_image=1 Update gallery set cover_image = 0 Where gallery_id = 1; Update gallery set cover_image = 1 Where ID = 4 AND gallery_id = 1; 我怎样用一个查询就能做到这一点呢?我刚刚找到了答案 UPDATE

我有两个查询,其中第一个查询将所有字段置为零,第二个查询将更新列,但我希望这些查询先进入on query change cover_image=0,然后进入cover_image=1

Update gallery set cover_image = 0 Where gallery_id = 1;
Update gallery set cover_image = 1 Where ID = 4 AND gallery_id = 1;
我怎样用一个查询就能做到这一点呢?

我刚刚找到了答案

UPDATE gallery SET cover_image = IF(id='4', '1','0') WHERE gallery_id = 1
等于

Update gallery set cover_image = 0 Where gallery_id = 1;
Update gallery set cover_image = 1 Where ID = 4 AND gallery_id = 1;

如果只想合并这些查询,请将标题更改为更明确。