当前位置: 首页 > 面试题库 >

MySQL选择昨天的日期

梁丘德寿
2023-03-14
问题内容

如何显示和计算日期为昨天的值?我曾经time()在数据库中插入日期。例:

URL: google.com youtube.com google.com youtube.com test.com youtube.com
DateVisited: 1313668492 1313668540 1313668571 13154314

我想显示表中存在多少个具有多个URL的URL,以及昨天有多少个URL被访问过。结果示例:

LINK       | timesExisted | timesVisitedYesterday
Google.com |       2      | 2
youtube.com|       3      | 3

我已经有了获取昨天日期的想法,但是我没有一个想法来计算昨天存在一个URL的次数和计算表中存在URL的次数。


问题答案:

获取昨天日期的最简单最佳方法是:

subdate(current_date, 1)

您的查询将是:

SELECT 
    url as LINK,
    count(*) as timesExisted,
    sum(DateVisited between UNIX_TIMESTAMP(subdate(current_date, 1)) and
        UNIX_TIMESTAMP(current_date)) as timesVisitedYesterday
FROM mytable
GROUP BY 1

出于好奇,sum(condition)为您提供满足条件的行
的原因(否则将需要繁琐且冗长的case语句)是因为在mysql中,布尔值是1true还是0false,因此对条件求和有效地计算了多少次这是真的。使用此模式可以整理您的SQL代码。



 类似资料:
  • 问题内容: 我正在尝试运行一个mysql select语句,该语句会查看今天的日期,并且仅返回在当天注册的结果。我目前已经尝试了以下方法,但是它似乎不起作用。 谢谢大家,我已经修改了此声明。 问题答案:

  • Python3 实例 以下代码通过导入 datetime 模块来获取昨天的日期:# Filename : test.py # author by : www.runoob.com # 引入 datetime 模块 import datetime def getYesterday(): today=datetime.date.today() oneday=datetime.timedelta(day

  • 问题内容: 我正在使用PHPMyadmin,并使用PHP将值放入数据库中。我使用时间戳存储产品的到期日期,如下所示,例如: 我要选择所有到期日期等于今天的日期加上8天的日期(例如上面的那一天) 我也想在一个单独的页面中选择所有过期日期等于今天日期+ 2周的内容,如果有人可以帮助我,将不胜感激! 问题答案: 您可以使用以下查询来做到这一点: 您可以使用过去的日期。

  • 问题内容: 我已经花了数小时在网路上搜寻这个问题的答案… 这是我目前拥有的: 问题答案: 使用: 参考:TRUNC 在工具上调用函数意味着优化器将无法使用与其关联的索引(假设存在一个索引)。某些数据库(例如Oracle)支持基于函数的索引,这些索引允许对数据执行函数以最大程度地减少这种情况下的影响,但IME DBA不允许这样做。我同意-在这种情况下,它们并不是真正必要的。

  • 问题内容: 希望这是一个简单的解决方案,但我正在尝试过滤以下数据:- 今天 昨天 本星期 这个月 在两个日期之间。 我从数据库获得的日期基本上是一个时间戳。 这是我尝试的: 今天 昨天 … 这不是真的工作。 任何的想法? 问题答案: 如果仅按日期选择,则将计算基于(仅返回日期)而不是(返回日期和时间)。这些示例将捕获日期范围内的所有时间: 今天: 昨天: 这个月: 在2013年6月3日至2013年

  • 问题内容: 我需要在Python中以这种格式找到“昨天”的日期。 例如,今天的日期将这样表示:111009 我今天可以轻松完成此操作,但是在“昨天”自动执行此操作有麻烦。 问题答案: 采用