我有一个使用 ODB 和 SQLite 数据库的 C++ 应用程序。我想计算任何查询将返回的结果数。目前,我正在做类似以下的事情:
using query = odb::query<person>;
auto filteredResults( db.query<person>(query::first == "John") );
const auto count = std::distance( filteredResults.begin(), filteredResults.end() );
是否有更有效的方法来计算将返回的查询结果的数量?
我知道 SQLite 提供了一个似乎更有效的 COUNT 函数( https://www.sqlitetutorial.net/sqlite-count-function/ ),但是有没有办法通过 ODB 调用它,或者我需要重新- 在本机 SQLite ( https://www.codesynthesis.com/products/odb/doc/manual.xhtml#3.12 ) 中编写查询?