13 #include <aggregate.h> 16 #include <timebucket.h> 32 Query(std::vector<Returns *> returns);
33 Query(std::vector<Returns *> returns,
Where *where);
34 Query(std::vector<Returns *> returns,
Where *where,
unsigned int limit);
37 void group(
const std::string& column);
39 void limit(
unsigned int limit);
42 void returns(std::vector<Returns *>);
45 const std::string
toJSON()
const;
50 std::vector<Aggregate *> m_aggregates;
52 std::vector<Sort *> m_sort;
55 std::vector<Returns *> m_returns;
void sort(Sort *sort)
Add a sort operation to an existing query.
Definition: query.cpp:185
Control a returned column.
Definition: returns.h:20
Aggregate clause in a selection of records.
Definition: aggregate.h:18
void distinct()
Add a distinct value modifier to the query.
Definition: query.cpp:256
Timebucket clause in a selection of records.
Definition: timebucket.h:20
Storage layer query container.
Definition: query.h:25
void timebucket(Timebucket *)
Add a timebucket operation to an existing query.
Definition: query.cpp:215
const std::string toJSON() const
Return the JSON payload for a where clause.
Definition: query.cpp:264
void aggregate(Aggregate *aggegate)
Add a aggregate operation to an existing query object.
Definition: query.cpp:175
void limit(unsigned int limit)
Limit the numebr of rows returned by the query.
Definition: query.cpp:205
Query(Where *where)
Construct a query with a simple where clause.
Definition: query.cpp:21
Join clause representation.
Definition: join.h:19
Sort clause in a selection of records.
Definition: sort.h:20
void join(Join *join)
Add a join clause to a query.
Definition: query.cpp:248
void group(const std::string &column)
Add a group operation to a query.
Definition: query.cpp:195
~Query()
Destructor for a query object.
Definition: query.cpp:142
Where clause in a selection of records.
Definition: where.h:31
void returns(Returns *)
Limit the query to return just a single column.
Definition: query.cpp:225