社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  DjangoApp

[精华] django问题:如何从一张表里面取最近一天的数据。正文附表!

加个小括号_ • 7 年前 • 2862 次点击  
class Match(models.Model):
    title = models.CharField(max_length=50)
    game = models.ForeignKey(Game)
    team1 = models.ForeignKey(Team, related_name='team1')
    team2 = models.ForeignKey(Team, related_name='team2')
    team1_score = models.IntegerField(default=0)
    team2_score = models.IntegerField(default=0)
    auto = models.BooleanField(default=True)
    start_time = models.DateTimeField()
    status = models.CharField(max_length=10, default='ON')
    is_end = models.BooleanField(default=False)

根据start_time取最近一天的数据。如果今天有就只取今天的,后天有明天没有就只取后天的,简而言之是取最近一天的。求助!

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/3013
 
2862 次点击  
文章 [ 1 ]  |  最新文章 7 年前
Py站长
Reply   •   1 楼
Py站长    7 年前

单从这个需求来看的话,你这个模型是完成不了的。

你得再维护一个中间数据。例如,在redis里维护一个时间值,这个时间是 所有行的时间值的最大值。每次更新或新增行时,更新这个值。(这个任务可以异步化)

当你要找最近一天的数据时,先查出这个值,然后和当前时间比较一下,然后就知道到底应该是以什么条件去过滤了。

这种方法的好处是查询速度快。