我有一个名为“emp”的表,其中包含以下数据:
id name status
1 x 0
2 y 1
3 z 0
4 p 1
如何编写查询以在单个查询中将状态 0 更改为 1 并将 1 更改为 0?
我有一个名为“emp”的表,其中包含以下数据:
id name status
1 x 0
2 y 1
3 z 0
4 p 1
如何编写查询以在单个查询中将状态 0 更改为 1 并将 1 更改为 0?
UPDATE
emp
SET
status = ABS(status - 1)
有一个CASE
:
UPDATE emp
SET status = CASE status
WHEN 1 THEN 0
WHEN 0 THEN 1
END
或者,用一点数学:
UPDATE emp
SET status = 1 - status
update your_table
set status = case when status = 1
then 0
else 1
end
update table set status = not status
true
是MySQL 的别名1
,是 MySQLfalse
的别名0
我正在使用此代码。它的工作方式与您想要的相同。
if($_REQUEST['status']=="1")
{
$status="0";
}
else
{
$status="1";
}
$id=$_REQUEST['id'];
$q="UPDATE `emp` SET `status`='$status' WHERE `id` ='$id'";
$qr=mysql_query($q);
UPDATE `emp` SET `status` = (`status`^1)