query/source/orm/query/query.cpp

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 {};
}
}