使用where更新多行在里面

lg40wkob  于 2021-06-17  发布在  Mysql
关注(0)|答案(1)|浏览(224)

我可能在这里发疯了,但这不是工作吗?

UPDATE clients SET ClientArchive = '1' WHERE ClientID IN (37,38,46,51, ...)

客户是一张table;clientid是该表中的一个自动更新整数;clientarchive是一个布尔tinyint(1)。我只想一下子改变一堆值。我从phpmyadmin 4.8.0.1中得到以下输出:
0行受影响(查询耗时0.0002秒。)
mariadb 5.5.57,php 5.6.36

wtlkbnrh

wtlkbnrh1#

如果clientarchive是布尔值,请尝试使用1(而不是“1”)

UPDATE clients 
    SET ClientArchive = 1 
    WHERE ClientID IN (37,38,46,51, ...)

并使用查询而不是ide响应检查结果

select *
    from clients
    where  ClientID IN (37,38,46,51, ...)
    and ClientArchive <> 1

相关问题