query parts progress

This commit is contained in:
2024-02-22 07:29:17 +01:00
parent b255ae22b4
commit 16d7fd7e76
10 changed files with 43 additions and 21 deletions
+6 -1
View File
@@ -138,7 +138,12 @@ public:
using query_select_finish::query_select_finish;
query_join_intermediate join(const std::string &join_table_name, const std::string &as);
query_where_intermediate where(const basic_condition &cond);
template<class Condition>
query_where_intermediate where(const Condition &cond)
{
data_.parts.push_back(std::make_unique<query_where_part>(cond));
return {connection_, data_};
}
query_group_by_intermediate group_by(const std::string &name);
query_order_by_intermediate order_by(const std::string &name);
};
+4
View File
@@ -81,6 +81,8 @@ public:
: query_part(dialect::token_t::ON)
, condition_(new Condition(cond)) {}
const basic_condition& condition() const;
private:
void accept(query_part_visitor &visitor) override;
@@ -96,6 +98,8 @@ public:
: query_part(dialect::token_t::WHERE)
, condition_(new Condition(cond)) {}
const basic_condition& condition() const;
private:
void accept(query_part_visitor &visitor) override;
+2
View File
@@ -12,6 +12,8 @@ struct table
std::string name;
std::string alias;
table(const char *name, std::string as = "") // NOLINT(*-explicit-constructor)
: name(name), alias(std::move(as)) {}
table(std::string name, std::string as = "") // NOLINT(*-explicit-constructor)
: name(std::move(name)), alias(std::move(as)) {}