gpt4 book ai didi

mysql - SQL 删除语句匹配条件

转载 作者:行者123 更新时间:2023-11-29 06:50:13 27 4
gpt4 key购买 nike

我正在尝试根据两个匹配项执行 DELETE 语句。我在 Sequel Pro (OSX) 中一直收到 0 Rows affected

DELETE FROM devices WHERE device_id = '99999999999' AND state != 'PENDING'

device_id 是一个 VARCHAR,state 是一个枚举列表。

注意:如果我删除 AND state != 'PENDING' ,查询将执行删除。但是,我需要同时满足这两个条件。

这似乎是 state is NULL 的问题。

最佳答案

NULL 无法使用 != 运算符(或类似运算符)进行比较,结果实际上将为 NULL。即 SELECT 'PENDING' != NULL 实际上选择了 NULL 而不是 FALSETRUE。如果该值可以是 NULL,您必须使用 IS NULLIS NOT NULL 来检查并返回适当的 bool 值。

AND (state != 'PENDING' OR state IS NULL)

文档:http://dev.mysql.com/doc/refman/5.0/en/working-with-null.html

关于mysql - SQL 删除语句匹配条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15904570/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com