首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python 学习手册
Python Cookbook
Python 基础教程
Python Sites
PyPI - Python Package Index
http://www.simple-is-better.com/
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
V2EX  ›  Python

服务器后端只保存一天最后一条信息

  •  
  •   cpj · 327 天前 · 1642 次点击
    这是一个创建于 327 天前的主题,其中的信息可能已经有所发展或是发生改变。
    数据是保存到 mongodb,希望保存某条数据时,只保存一天最后一条。我想到的是,保存每条数据之前,按创建时间的字段,查询所有记录并删除。不知道有没有更好的做法
    12 回复  |  直到 2018-09-25 11:38:10 +08:00
        1
    MyPassWordis   327 天前
    日期为主键然后 insert ?
        2
    simonliu2018   327 天前
    把数据库的主键设计成日期,比如:2018 年 09 月 25 日,如果发现有记录就更新,没有就新增。

    可以再优化一下主键,时间戳的精度是秒,如果把时间戳除一天的秒数( 86400 ),也相当于是当天的日期。
        3
    cpj   327 天前
    @MyPassWordis 可以
        4
    cpj   327 天前
    @simonliu2018 实际保存了不同用户的不同项目的不同信息,如果日期设为主键,是不是数据库只存一个人的了?
        5
    rust   327 天前
    @cpj 那你用 DateTIme+UserName 做主键不就行了
        6
    cpj   327 天前
    @MyPassWordis 但是我存了不同用户的信息,日期做主键那只能存一个人的了
        7
    cpj   327 天前
    @rust 傻了,是呀,谢谢 ; )
        8
    est   327 天前
    upsert {date: "2018-09-25"}, {value: "text text"}
        9
    loveCoding   327 天前
    别物理删除,改下记录状态就好,其他随便你怎么弄
        10
    toyuanx   327 天前
    MongoDB 不知道怎么弄,但是 mysql 可以把 uid+date 设置为唯一索引,然后 insert...on duplicate key update
        11
    cpj   326 天前
    @est 也可行诶
        12
    cpj   326 天前
    @toyuanx 嗯,正准备用这个方案
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2097 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 23ms · UTC 03:35 · PVG 11:35 · LAX 20:35 · JFK 23:35
    ♥ Do have faith in what you're doing.