gpt4 book ai didi

mysql - MySql中逻辑运算符使用的困惑

转载 作者:太空宇宙 更新时间:2023-11-03 11:30:26 24 4
gpt4 key购买 nike

我有一个名为 users 的表,如下所示:

enter image description here

现在当我运行查询时:

select * from users where name='admin1' AND 1;

我只得到 admin1 记录作为输出,如下所示: enter image description here

虽然查询为:

select * from users where name='admin1' OR 1;

我将所有记录作为输出,如下所示: enter image description here

我想了解为什么会这样。恕我直言,如果我们谈论评估逻辑表达式,上面的两个查询都评估为 1,因为它们都是

1 AND 1

1 OR 1

那么为什么会有这种差异呢?还是我可能缺少一些基本的东西?

最佳答案

只是添加到@DanoPlurana 的回答中,我认为这是正确的。

我强烈反对以这种方式编写查询,因为它们不符合 SQL 标准,而且难以阅读。如果您对它们的含义感到困惑,我敢打赌在您之后为了维护而阅读它的下一位开发人员也会感到困惑。这会在生产中产生真正的缺陷,并为您的客户带来真正的金钱损失

只需编写正常的 bool 条件,让每个人的生活更轻松。

关于mysql - MySql中逻辑运算符使用的困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50507726/

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