【问题标题】:MySQL, result bigger than X numberMySQL,结果大于 X 数
【发布时间】:2014-07-17 01:27:52
【问题描述】:

我正在尝试在数据库中获取过去 15 天的结果。时间以纪元格式添加,如1400904415

我试图只获得最后的结果(15 天),所以我想知道是否可以这样做:

SELECT * FROM dataadded WHERE createdate="here something like createdate its bigger than currentdate - 15 days"

这可能吗?

【问题讨论】:

标签: php mysql epoch


【解决方案1】:

如果您不想将工作卸载到数据库中,也可以在 PHP 中执行此操作

 $date = time() - (86400 * 15); //86400 seconds = 1 day
 $sql = 'SELECT * FROM dataadded WHERE createdate=' . $date;

【讨论】:

  • 你应该有一个>= 而不是一个简单的=
  • 通常我会,但 OP 没有使用
  • 根据比较的准确性以及时间戳的原始来源,这可能是一个更好的解决方案。如果您在 PHP 脚本中从 time() 填充数据库,那么这将是最准确的解决方案。为了可读性和利用 MySQL 函数,您可以考虑在 MySQL 中使用 DATETIME 和 NOW()。
【解决方案2】:

使用DATE_SUB (SUBDATE)

SELECT * FROM dataadded WHERE createdate >= DATE_SUB(CURDATE(), INTERVAL 15 DAY);

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-05
  • 1970-01-01
  • 2023-03-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多