【发布时间】:2011-02-11 10:37:38
【问题描述】:
我目前正在尝试优化从 SQLite 数据库中检索日志条目页面的缓慢过程。
我注意到我几乎总是检索下一个条目以及可用条目的计数:
SELECT time, level, type, text FROM Logs
WHERE level IN (%s)
ORDER BY time DESC, id DESC
LIMIT LOG_REQ_LINES OFFSET %d* LOG_REQ_LINES ;
连同可以匹配当前查询的记录总数:
SELECT count(*) FROM Logs WHERE level IN (%s);
(用于显示“第 n 页,共 m”)
我想知道,我是否可以连接这两个查询,并在一个 sqlite3_exec() 中简单地连接查询字符串来询问它们。我的回调函数应该怎么看呢?我可以通过argc区分不同类型的数据吗?
您还有什么其他优化建议?
【问题讨论】:
标签: c++ sql c optimization sqlite