要按时间戳分组的 SQLite3 语句,你可以使用 SQLite3 的日期和时间函数来实现。以下是一个示例代码:
import sqlite3
# 连接到 SQLite 数据库
conn = sqlite3.connect('example.db')
c = conn.cursor()
# 创建一个包含时间戳的表
c.execute('''CREATE TABLE IF NOT EXISTS data
(id INTEGER PRIMARY KEY AUTOINCREMENT,
timestamp DATETIME DEFAULT CURRENT_TIMESTAMP)''')
# 插入示例数据
c.execute("INSERT INTO data (timestamp) VALUES ('2022-01-01 10:00:00')")
c.execute("INSERT INTO data (timestamp) VALUES ('2022-01-01 10:15:00')")
c.execute("INSERT INTO data (timestamp) VALUES ('2022-01-01 10:30:00')")
c.execute("INSERT INTO data (timestamp) VALUES ('2022-01-02 11:00:00')")
c.execute("INSERT INTO data (timestamp) VALUES ('2022-01-02 11:15:00')")
# 按日期分组并计算每个日期的记录数
c.execute("SELECT DATE(timestamp) AS date, COUNT(*) AS count FROM data GROUP BY date")
# 输出结果
for row in c.fetchall():
print(row)
# 关闭数据库连接
conn.close()
上面的代码首先创建一个包含时间戳的表,然后插入一些示例数据。接下来,它使用GROUP BY
子句和DATE()
函数按日期分组,并使用COUNT()
函数计算每个日期的记录数。最后,它遍历查询结果并打印每个日期和记录数。
请注意,示例代码假设你已经安装了 SQLite3 并创建了一个名为 example.db
的数据库文件。你可以根据自己的实际情况进行修改。