70 lines
1.6 KiB
C++
70 lines
1.6 KiB
C++
#include "matador/query/query.hpp"
|
|
|
|
namespace matador::query {
|
|
|
|
table_column count(const std::string &column) {
|
|
return {sql::sql_function_t::Count, column};
|
|
}
|
|
|
|
table_column count_all() {
|
|
return count("*");
|
|
}
|
|
table_column sum(const std::string& column) {
|
|
return {sql::sql_function_t::Sum, column};
|
|
}
|
|
table_column avg(const std::string& column) {
|
|
return {sql::sql_function_t::Avg, column};
|
|
}
|
|
table_column maximum(const std::string& column) {
|
|
return {sql::sql_function_t::Max, column};
|
|
}
|
|
table_column minimum(const std::string& column) {
|
|
return {sql::sql_function_t::Min, column};
|
|
}
|
|
|
|
query_create_intermediate query::create()
|
|
{
|
|
return {};
|
|
}
|
|
|
|
query_drop_intermediate query::drop() {
|
|
return {};
|
|
}
|
|
|
|
query_select_intermediate query::select() {
|
|
return query_select_intermediate{{}};
|
|
}
|
|
|
|
query_select_intermediate query::select( const std::initializer_list<table_column> columns) {
|
|
return select(std::vector<table_column>{columns});
|
|
}
|
|
|
|
query_select_intermediate query::select(const std::vector<table_column>& columns) {
|
|
return query_select_intermediate{columns};
|
|
}
|
|
|
|
query_select_intermediate query::select(const std::vector<std::string> &column_names) {
|
|
std::vector<table_column> columns;
|
|
columns.reserve(column_names.size());
|
|
for (const auto &col_name : column_names) {
|
|
columns.emplace_back(col_name);
|
|
}
|
|
return select(columns);
|
|
}
|
|
|
|
query_insert_intermediate query::insert() {
|
|
return {};
|
|
}
|
|
|
|
query_update_intermediate query::update(const table &table) {
|
|
return query_update_intermediate{table};
|
|
}
|
|
|
|
query_delete_intermediate query::remove() {
|
|
return {};
|
|
}
|
|
|
|
query_alter_intermediate query::alter() {
|
|
return {};
|
|
}
|
|
} |