mysql - 删除超过半小时或 1800 秒的 MySql 记录?

标签 mysql

当前的MYSQL是

DELETE FROM `sessions` WHERE `expires` < UNIX_TIMESTAMP();

不知道如何让它做我想做的事。我正在考虑使用 php 并执行 unixtime-1800,然后在 MySQL 中使用它,这对我的应用程序来说没问题。不确定你是否可以在 MySQL 中完成这一切,因为我只是想知道。

我的 PHP 是这样的

<?Php
$time = time() - 1800;
mysql_query("DELETE FROM `sessions` WHERE `expires` < $time;")
?>

最佳答案

只需减去您想要的秒数

DELETE FROM `sessions` WHERE `expires` < (UNIX_TIMESTAMP() - 1800);

您计划多久运行一次此查询?

关于mysql - 删除超过半小时或 1800 秒的 MySql 记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5606429/

相关文章:

MySQL - 如何在 Update 语句中将字符串值解析为 DATETIME 格式?

mysql - MySql not 运算符的令人惊讶的行为

mysql - 获取表中重复记录出现的次数

java - 错误代码 1241,SQL 状态 21000 : Operand should contain 1 column(s)

php - Mysql sum 函数结果显示在每一行

mysql - 在 SQL 中计算点击链接的总数和唯一性

PHP/MySQL - 电子邮件验证不起作用

mysql - 优化此查询

C# Windows 应用程序访问数据库数据不会在关闭时保留

MySQL语法错误-表名