【发布时间】:2018-11-06 23:00:14
【问题描述】:
我有一个 sqlite 表定义为:
class HourlyUserWebsite(Base):
__tablename__ = 'hourly_user_website'
id = Column(Integer, primary_key=True)
user = Column(String(600), index=True)
domain = Column(String(600))
time_secs = Column(Integer, index=True)
def __repr__(self):
return "HourlyUserWebsite(user='%s', domain='%s', time_secs=%d)" % \
(self.user, self.domain, self.time_secs)
我使用类方法向它添加元素:
def add_elements_to_hourly_db(self, data, start_secs, end_secs, engine):
session = self._get_session(engine)
for el in data:
session.add(el)
session.commit()
return
由于数据是时间序列,我希望始终添加具有增加或等于 time_secs 值(不减少)的元素。
我通过如下查询从表中获取数据:
session.query(HorlyUserWebsite)
我希望查询结果按time_secs 和user 排序。
有什么办法可以做到吗?数据是否可以以优化排序数据查询的方式存储,同时记住它是一个时间序列?
【问题讨论】:
标签: database sqlite sqlalchemy