gpt4 book ai didi

mysql - 此 sql 似乎删除了字段大于 0 的所有行

转载 作者:太空宇宙 更新时间:2023-11-03 10:58:18 25 4
gpt4 key购买 nike

所以基本上我试图在我的销售页面上设置一个自动过期,我有这个 sql;

DELETE 
FROM `game_sales`
WHERE `expires` <= NOW()
AND `expires` > 0

它似乎删除了所有 expires > 0 的行,而不管 expires 低于当前时间。

我怎样才能阻止它?

最佳答案

您根本无法比较 INTDATETIME (这是 NOW() 返回的内容)。

如果您的 expires实际上是一个时间戳,您可以:

  • 将时间戳转换为 DATETIMEFROM_UNIXTIME() : WHERE FROM_UNIXTIME(expires) <= NOW()

  • 转换 DATETIME到一个整数:WHERE expires <= UNIX_TIMESTAMP(NOW())

第二个选项当然是首选。使用此版本,大多数查询应该能够使用 expires 上的索引(而第一个版本绝对阻止在该列上使用索引)。

关于mysql - 此 sql 似乎删除了字段大于 0 的所有行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18316833/

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