Sqlite3,python获取最近3天的数据
时间: 2024-10-07 11:05:56 浏览: 31
SQLite是一种轻量级的关系型数据库管理系统,它不支持复杂的时间戳查询直接从表中获取最近三天的数据。但在Python中,我们可以借助sqlite3库配合datetime模块来实现这个功能。首先,你需要确保你的数据表有一个时间戳字段,通常叫做`timestamp`或者类似。
假设你有一个名为`your_table`的表,并且有一个叫做`created_at`的字段记录创建时间,你可以编写如下的SQL查询:
```python
import sqlite3
from datetime import datetime, timedelta
# 连接到SQLite数据库
conn = sqlite3.connect('your_database.db')
cursor = conn.cursor()
# 获取当前日期减去三天
three_days_ago = datetime.now() - timedelta(days=3)
# 构造SQL查询
query = f"SELECT * FROM your_table WHERE created_at >= ?"
cursor.execute(query, (three_days_ago,))
# 获取结果
recent_data = cursor.fetchall()
# 关闭连接
cursor.close()
conn.close()
# 最近三天的数据现在存储在`recent_data`变量中
```
如果你想要获取最近三天的每一天的数据,可以稍微修改查询,例如每天获取一条:
```python
query = f"SELECT * FROM your_table WHERE created_at BETWEEN ? AND ?"
cursor.execute(query, (three_days_ago, three_days_ago + timedelta(days=1)))
data_per_day = [row for row in cursor]
```
阅读全文