31 #ifndef LEDGER_CORE_QUERYBUILDER_H 32 #define LEDGER_CORE_QUERYBUILDER_H 34 #include "QueryFilter.h" 38 #include <utils/Option.hpp> 53 QueryBuilder& where(
const std::shared_ptr<api::QueryFilter>& filter);
54 QueryBuilder& outerJoin(
const std::string& table,
const std::string& condition);
55 QueryBuilder& order(std::string&& keys,
bool&& descending);
58 soci::details::prepare_temp_type execute(soci::session& sql);
61 using LeftOuterJoin = std::tuple<std::string, std::string>;
66 std::list<std::tuple<std::string, bool>> _order;
67 std::vector<Option<LeftOuterJoin>> _outerJoins;
68 std::shared_ptr<QueryFilter> _filter;
76 #endif //LEDGER_CORE_QUERYBUILDER_H Definition: QueryBuilder.h:42
Definition: Account.cpp:8