无法将NULL更改为0(MySQL查询)

时间:2019-12-13 22:47:19

标签: mysql null

MySQL服务器版本:5.7.25-28-log-源分发

当我在phpMyAdmin中运行此行时,我会得到131行

db.Users.aggregate(
  [
    {
      $match: {
        _id: {
          $gt: ObjectId(Math.floor((new Date('2019-08-28T22:55:00Z')) / 1000).toString(16) + "0000000000000000"),
          $lt: ObjectId(Math.floor((new Date('2019-11-28T22:56:00Z')) / 1000).toString(16) + "0000000000000000")
        }
      }
    },
    {
      $project: {
        date: {$dateToString: {format: '%Y-%m-%d', date: '$_id'}}
      },
    },
    {
      $group: {
        _id: "$date",
        count: {$sum: 1}
      }
    },
    {
      $sort: {
        _id: 1
      }
    }
  ]
)

我在phpMyAdmin中运行685行

SELECT * FROM bookings WHERE newsletter = 0

但是当我在phpMyAdmin中模拟此查询时,我得到0(零)行

SELECT * FROM bookings WHERE newsletter is null

知道为什么模拟失败了吗?

感谢任何人必须提供的任何东西

更新

这是运行查询模拟后的屏幕截图

screenshot

1 个答案:

答案 0 :(得分:0)

我猜您的“模拟查询”在具有回滚的事务中运行。

仅用于模拟查询/检查语法...

像一场空战

https://dbfiddle.uk/?rdbms=mysql_5.6&fiddle=548a364a40ac226ef847cc62630f373a

如果您单击“执行”,可能会在不自动回滚的情况下运行查询