Documentation
¶
Index ¶
- type DeleteQueryBuilder
- func (qb *DeleteQueryBuilder) Build() (string, []interface{}, error)
- func (qb *DeleteQueryBuilder) Delete() *DeleteQueryBuilder
- func (ub *DeleteQueryBuilder) Dump() (string, []interface{}, error)
- func (qb *DeleteQueryBuilder) GetJoinBuilder() *query.JoinBuilder[query.DeleteBuilder]
- func (qb *DeleteQueryBuilder) GetOrderByBuilder() *query.OrderByBuilder[query.DeleteBuilder]
- func (qb *DeleteQueryBuilder) GetQueryBuilder() *DeleteQueryBuilder
- func (qb *DeleteQueryBuilder) GetWhereBuilder() *query.WhereBuilder[query.DeleteBuilder]
- func (ub *DeleteQueryBuilder) RawSql() (string, error)
- func (qb *DeleteQueryBuilder) Table(table string) *DeleteQueryBuilder
- type InsertQueryBuilder
- func (ib *InsertQueryBuilder) Build() (string, []interface{}, error)
- func (ib *InsertQueryBuilder) Dump() (string, []interface{}, error)
- func (ib *InsertQueryBuilder) Insert(data map[string]interface{}) *InsertQueryBuilder
- func (ib *InsertQueryBuilder) InsertBatch(data []map[string]interface{}) *InsertQueryBuilder
- func (ib *InsertQueryBuilder) InsertOrIgnore(data []map[string]interface{}) *InsertQueryBuilder
- func (ib *InsertQueryBuilder) InsertUsing(columns []string, qb *SelectQueryBuilder) *InsertQueryBuilder
- func (ib *InsertQueryBuilder) RawSql() (string, error)
- func (ib *InsertQueryBuilder) Table(table string) *InsertQueryBuilder
- func (ib *InsertQueryBuilder) UpdateOrInsert(condition map[string]interface{}, values map[string]interface{}) *InsertQueryBuilder
- func (ib *InsertQueryBuilder) Upsert(data []map[string]interface{}, unique []string, updateColumns []string) *InsertQueryBuilder
- type JoinClauseQueryBuilder
- func (qb *JoinClauseQueryBuilder) On(my, condition, target string) *JoinClauseQueryBuilder
- func (qb *JoinClauseQueryBuilder) OrOn(my, condition, target string) *JoinClauseQueryBuilder
- func (qb *JoinClauseQueryBuilder) OrWhere(column, condition string, value interface{}) *JoinClauseQueryBuilder
- func (qb *JoinClauseQueryBuilder) Where(column, condition string, value interface{}) *JoinClauseQueryBuilder
- type JoinQueryBuilder
- func (qb *JoinQueryBuilder[T, C]) CrossJoin(table string) T
- func (qb *JoinQueryBuilder[T, C]) Join(table, my, condition, target string) T
- func (jb *JoinQueryBuilder[T, C]) JoinLateral(qb *SelectQueryBuilder, alias string) T
- func (jb *JoinQueryBuilder[T, C]) JoinQuery(table string, fn func(b *JoinClauseQueryBuilder)) T
- func (jb *JoinQueryBuilder[T, C]) JoinSubQuery(qb *SelectQueryBuilder, alias, my, condition, target string) T
- func (qb *JoinQueryBuilder[T, C]) LeftJoin(table, my, condition, target string) T
- func (jb *JoinQueryBuilder[T, C]) LeftJoinLateral(qb *SelectQueryBuilder, alias string) T
- func (jb *JoinQueryBuilder[T, C]) LeftJoinQuery(table string, fn func(b *JoinClauseQueryBuilder)) T
- func (jb *JoinQueryBuilder[T, C]) LeftJoinSubQuery(qb *SelectQueryBuilder, alias, my, condition, target string) T
- func (qb *JoinQueryBuilder[T, C]) RightJoin(table, my, condition, target string) T
- func (jb *JoinQueryBuilder[T, C]) RightJoinQuery(table string, fn func(b *JoinClauseQueryBuilder)) T
- func (jb *JoinQueryBuilder[T, C]) RightJoinSubQuery(qb *SelectQueryBuilder, alias, my, condition, target string) T
- func (b *JoinQueryBuilder[T, C]) SetParent(parent *T) *T
- type OrderByQueryBuilder
- type QueryBuilderStrategy
- type SelectQueryBuilder
- func (qb *SelectQueryBuilder) Avg(column string) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) Build() (string, []interface{}, error)
- func (qb *SelectQueryBuilder) Count(columns ...string) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) Distinct(column ...string) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) Dump() (string, []interface{}, error)
- func (qb *SelectQueryBuilder) GetJoinBuilder() *query.JoinBuilder[query.SelectBuilder]
- func (qb *SelectQueryBuilder) GetOrderByBuilder() *query.OrderByBuilder[query.SelectBuilder]
- func (qb *SelectQueryBuilder) GetQuery() *structs.Query
- func (qb *SelectQueryBuilder) GetQueryBuilder() *SelectQueryBuilder
- func (qb *SelectQueryBuilder) GetWhereBuilder() *query.WhereBuilder[query.SelectBuilder]
- func (qb *SelectQueryBuilder) GroupBy(columns ...string) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) Having(column, condition string, value interface{}) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) HavingRaw(raw string) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) Limit(limit int64) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) LockForUpdate() *SelectQueryBuilder
- func (qb *SelectQueryBuilder) Max(column string) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) Min(column string) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) Offset(offset int64) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) OrHaving(column, condition string, value interface{}) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) OrHavingRaw(raw string) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) RawSql() (string, error)
- func (qb *SelectQueryBuilder) Select(columns ...string) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) SelectRaw(raw string, value ...interface{}) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) SharedLock() *SelectQueryBuilder
- func (qb *SelectQueryBuilder) Skip(offset int64) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) Sum(column string) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) Table(table string) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) Take(limit int64) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) Union(sb *SelectQueryBuilder) *SelectQueryBuilder
- func (qb *SelectQueryBuilder) UnionAll(sb *SelectQueryBuilder) *SelectQueryBuilder
- type UpdateQueryBuilder
- func (ub *UpdateQueryBuilder) Build() (string, []interface{}, error)
- func (ub *UpdateQueryBuilder) Dump() (string, []interface{}, error)
- func (qb *UpdateQueryBuilder) GetJoinBuilder() *query.JoinBuilder[query.UpdateBuilder]
- func (qb *UpdateQueryBuilder) GetOrderByBuilder() *query.OrderByBuilder[query.UpdateBuilder]
- func (qb *UpdateQueryBuilder) GetQueryBuilder() *UpdateQueryBuilder
- func (qb *UpdateQueryBuilder) GetWhereBuilder() *query.WhereBuilder[query.UpdateBuilder]
- func (ub *UpdateQueryBuilder) RawSql() (string, error)
- func (ub *UpdateQueryBuilder) Table(table string) *UpdateQueryBuilder
- func (ub *UpdateQueryBuilder) Update(data map[string]interface{}) *UpdateQueryBuilder
- type WhereDeleteQueryBuilder
- type WhereQueryBuilder
- func (wb *WhereQueryBuilder[T, C]) GetBuilder() *query.WhereBuilder[C]
- func (wb *WhereQueryBuilder[T, C]) OrWhere(column string, condition string, value interface{}) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereBetween(column string, min interface{}, max interface{}) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereBetweenColumns(allColumns []string, column string, min string, max string) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereColumn(allColumns []string, column string, cond ...string) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereColumns(allColumns []string, columns [][]string) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereDate(column string, cond string, date string) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereDay(column string, cond string, day string) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereExists(fn func(q *SelectQueryBuilder)) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereExistsSubQuery(qb *SelectQueryBuilder) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereFullText(columns []string, value string, options map[string]interface{}) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereGroup(fn func(wb *WhereQueryBuilder[T, C])) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereIn(column string, values interface{}) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereInSubQuery(column string, qb *SelectQueryBuilder) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereMonth(column string, cond string, month string) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereNot(fn func(wb *WhereQueryBuilder[T, C])) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereNotBetween(column string, min interface{}, max interface{}) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereNotBetweenColumns(allColumns []string, column string, min string, max string) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereNotExists(fn func(q *SelectQueryBuilder)) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereNotExistsQuery(qb *SelectQueryBuilder) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereNotIn(column string, values interface{}) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereNotInSubQuery(column string, qb *SelectQueryBuilder) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereNotNull(column string) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereNull(column string) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereRaw(raw string, values map[string]any) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereSubQuery(column string, condition string, qb *SelectQueryBuilder) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereTime(column string, cond string, time string) T
- func (wb *WhereQueryBuilder[T, C]) OrWhereYear(column string, cond string, year string) T
- func (wb *WhereQueryBuilder[T, C]) SafeOrWhereRaw(raw string, values map[string]any) T
- func (wb *WhereQueryBuilder[T, C]) SafeWhereRaw(raw string, values map[string]any) T
- func (b *WhereQueryBuilder[T, C]) SetParent(parent *T) *T
- func (wb *WhereQueryBuilder[T, C]) Where(column string, condition string, value interface{}) T
- func (wb *WhereQueryBuilder[T, C]) WhereAll(columns []string, condition string, value interface{}) T
- func (wb *WhereQueryBuilder[T, C]) WhereAny(columns []string, condition string, value interface{}) T
- func (wb *WhereQueryBuilder[T, C]) WhereBetween(column string, min interface{}, max interface{}) T
- func (wb *WhereQueryBuilder[T, C]) WhereBetweenColumns(allColumns []string, column string, min string, max string) T
- func (wb *WhereQueryBuilder[T, C]) WhereColumn(allColumns []string, column string, cond ...string) T
- func (wb *WhereQueryBuilder[T, C]) WhereColumns(allColumns []string, columns [][]string) T
- func (wb *WhereQueryBuilder[T, C]) WhereDate(column string, cond string, date string) T
- func (wb *WhereQueryBuilder[T, C]) WhereDay(column string, cond string, day string) T
- func (wb *WhereQueryBuilder[T, C]) WhereExists(fn func(q *SelectQueryBuilder)) T
- func (wb *WhereQueryBuilder[T, C]) WhereExistsSubQuery(qb *SelectQueryBuilder) T
- func (wb *WhereQueryBuilder[T, C]) WhereFullText(columns []string, value string, options map[string]interface{}) T
- func (wb *WhereQueryBuilder[T, C]) WhereGroup(fn func(wqb *WhereQueryBuilder[T, C])) T
- func (wb *WhereQueryBuilder[T, C]) WhereIn(column string, values interface{}) T
- func (wb *WhereQueryBuilder[T, C]) WhereInSubQuery(column string, qb *SelectQueryBuilder) T
- func (wb *WhereQueryBuilder[T, C]) WhereMonth(column string, cond string, month string) T
- func (wb *WhereQueryBuilder[T, C]) WhereNot(fn func(wb *WhereQueryBuilder[T, C])) T
- func (wb *WhereQueryBuilder[T, C]) WhereNotBetween(column string, min interface{}, max interface{}) T
- func (wb *WhereQueryBuilder[T, C]) WhereNotBetweenColumns(allColumns []string, column string, min string, max string) T
- func (wb *WhereQueryBuilder[T, C]) WhereNotExists(fn func(q *SelectQueryBuilder)) T
- func (wb *WhereQueryBuilder[T, C]) WhereNotExistsQuery(qb *SelectQueryBuilder) T
- func (wb *WhereQueryBuilder[T, C]) WhereNotIn(column string, values interface{}) T
- func (wb *WhereQueryBuilder[T, C]) WhereNotInSubQuery(column string, qb *SelectQueryBuilder) T
- func (wb *WhereQueryBuilder[T, C]) WhereNotNull(column string) T
- func (wb *WhereQueryBuilder[T, C]) WhereNull(column string) T
- func (wb *WhereQueryBuilder[T, C]) WhereRaw(raw string, values map[string]any) T
- func (wb *WhereQueryBuilder[T, C]) WhereSubQuery(column string, condition string, qb *SelectQueryBuilder) T
- func (wb *WhereQueryBuilder[T, C]) WhereTime(column string, cond string, time string) T
- func (wb *WhereQueryBuilder[T, C]) WhereYear(column string, cond string, year string) T
- type WhereSelectQueryBuilder
- type WhereUpdateQueryBuilder
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DeleteQueryBuilder ¶
type DeleteQueryBuilder struct {
WhereQueryBuilder[*DeleteQueryBuilder, query.DeleteBuilder]
JoinQueryBuilder[*DeleteQueryBuilder, query.DeleteBuilder]
OrderByQueryBuilder[*DeleteQueryBuilder, query.DeleteBuilder]
QueryBuilderStrategy[DeleteQueryBuilder, query.DeleteBuilder]
// contains filtered or unexported fields
}
func NewDeleteQueryBuilder ¶
func NewDeleteQueryBuilder(strategy interfaces.QueryBuilderStrategy) *DeleteQueryBuilder
func (*DeleteQueryBuilder) Build ¶
func (qb *DeleteQueryBuilder) Build() (string, []interface{}, error)
func (*DeleteQueryBuilder) Delete ¶
func (qb *DeleteQueryBuilder) Delete() *DeleteQueryBuilder
func (*DeleteQueryBuilder) Dump ¶
func (ub *DeleteQueryBuilder) Dump() (string, []interface{}, error)
func (*DeleteQueryBuilder) GetJoinBuilder ¶
func (qb *DeleteQueryBuilder) GetJoinBuilder() *query.JoinBuilder[query.DeleteBuilder]
func (*DeleteQueryBuilder) GetOrderByBuilder ¶
func (qb *DeleteQueryBuilder) GetOrderByBuilder() *query.OrderByBuilder[query.DeleteBuilder]
func (*DeleteQueryBuilder) GetQueryBuilder ¶
func (qb *DeleteQueryBuilder) GetQueryBuilder() *DeleteQueryBuilder
func (*DeleteQueryBuilder) GetWhereBuilder ¶
func (qb *DeleteQueryBuilder) GetWhereBuilder() *query.WhereBuilder[query.DeleteBuilder]
func (*DeleteQueryBuilder) RawSql ¶
func (ub *DeleteQueryBuilder) RawSql() (string, error)
func (*DeleteQueryBuilder) Table ¶
func (qb *DeleteQueryBuilder) Table(table string) *DeleteQueryBuilder
type InsertQueryBuilder ¶
type InsertQueryBuilder struct {
// contains filtered or unexported fields
}
func NewInsertQueryBuilder ¶
func NewInsertQueryBuilder(strategy interfaces.QueryBuilderStrategy) *InsertQueryBuilder
func (*InsertQueryBuilder) Build ¶
func (ib *InsertQueryBuilder) Build() (string, []interface{}, error)
func (*InsertQueryBuilder) Dump ¶
func (ib *InsertQueryBuilder) Dump() (string, []interface{}, error)
func (*InsertQueryBuilder) Insert ¶
func (ib *InsertQueryBuilder) Insert(data map[string]interface{}) *InsertQueryBuilder
func (*InsertQueryBuilder) InsertBatch ¶
func (ib *InsertQueryBuilder) InsertBatch(data []map[string]interface{}) *InsertQueryBuilder
func (*InsertQueryBuilder) InsertOrIgnore ¶
func (ib *InsertQueryBuilder) InsertOrIgnore(data []map[string]interface{}) *InsertQueryBuilder
func (*InsertQueryBuilder) InsertUsing ¶
func (ib *InsertQueryBuilder) InsertUsing(columns []string, qb *SelectQueryBuilder) *InsertQueryBuilder
func (*InsertQueryBuilder) RawSql ¶
func (ib *InsertQueryBuilder) RawSql() (string, error)
func (*InsertQueryBuilder) Table ¶
func (ib *InsertQueryBuilder) Table(table string) *InsertQueryBuilder
func (*InsertQueryBuilder) UpdateOrInsert ¶
func (ib *InsertQueryBuilder) UpdateOrInsert(condition map[string]interface{}, values map[string]interface{}) *InsertQueryBuilder
func (*InsertQueryBuilder) Upsert ¶
func (ib *InsertQueryBuilder) Upsert(data []map[string]interface{}, unique []string, updateColumns []string) *InsertQueryBuilder
type JoinClauseQueryBuilder ¶
type JoinClauseQueryBuilder struct {
// contains filtered or unexported fields
}
func NewJoinClauseQueryBuilder ¶
func NewJoinClauseQueryBuilder() *JoinClauseQueryBuilder
func (*JoinClauseQueryBuilder) On ¶
func (qb *JoinClauseQueryBuilder) On(my, condition, target string) *JoinClauseQueryBuilder
func (*JoinClauseQueryBuilder) OrOn ¶
func (qb *JoinClauseQueryBuilder) OrOn(my, condition, target string) *JoinClauseQueryBuilder
func (*JoinClauseQueryBuilder) OrWhere ¶
func (qb *JoinClauseQueryBuilder) OrWhere(column, condition string, value interface{}) *JoinClauseQueryBuilder
func (*JoinClauseQueryBuilder) Where ¶
func (qb *JoinClauseQueryBuilder) Where(column, condition string, value interface{}) *JoinClauseQueryBuilder
type JoinQueryBuilder ¶
type JoinQueryBuilder[T QueryBuilderStrategy[T, C], C any] struct { // contains filtered or unexported fields }
func NewJoinQueryBuilder ¶
func NewJoinQueryBuilder[T QueryBuilderStrategy[T, C], C any](strategy interfaces.QueryBuilderStrategy) *JoinQueryBuilder[T, C]
func (*JoinQueryBuilder[T, C]) CrossJoin ¶
func (qb *JoinQueryBuilder[T, C]) CrossJoin(table string) T
func (*JoinQueryBuilder[T, C]) Join ¶
func (qb *JoinQueryBuilder[T, C]) Join(table, my, condition, target string) T
func (*JoinQueryBuilder[T, C]) JoinLateral ¶
func (jb *JoinQueryBuilder[T, C]) JoinLateral(qb *SelectQueryBuilder, alias string) T
func (*JoinQueryBuilder[T, C]) JoinQuery ¶
func (jb *JoinQueryBuilder[T, C]) JoinQuery(table string, fn func(b *JoinClauseQueryBuilder)) T
func (*JoinQueryBuilder[T, C]) JoinSubQuery ¶
func (jb *JoinQueryBuilder[T, C]) JoinSubQuery(qb *SelectQueryBuilder, alias, my, condition, target string) T
func (*JoinQueryBuilder[T, C]) LeftJoin ¶
func (qb *JoinQueryBuilder[T, C]) LeftJoin(table, my, condition, target string) T
func (*JoinQueryBuilder[T, C]) LeftJoinLateral ¶
func (jb *JoinQueryBuilder[T, C]) LeftJoinLateral(qb *SelectQueryBuilder, alias string) T
func (*JoinQueryBuilder[T, C]) LeftJoinQuery ¶
func (jb *JoinQueryBuilder[T, C]) LeftJoinQuery(table string, fn func(b *JoinClauseQueryBuilder)) T
func (*JoinQueryBuilder[T, C]) LeftJoinSubQuery ¶
func (jb *JoinQueryBuilder[T, C]) LeftJoinSubQuery(qb *SelectQueryBuilder, alias, my, condition, target string) T
func (*JoinQueryBuilder[T, C]) RightJoin ¶
func (qb *JoinQueryBuilder[T, C]) RightJoin(table, my, condition, target string) T
func (*JoinQueryBuilder[T, C]) RightJoinQuery ¶
func (jb *JoinQueryBuilder[T, C]) RightJoinQuery(table string, fn func(b *JoinClauseQueryBuilder)) T
func (*JoinQueryBuilder[T, C]) RightJoinSubQuery ¶
func (jb *JoinQueryBuilder[T, C]) RightJoinSubQuery(qb *SelectQueryBuilder, alias, my, condition, target string) T
func (*JoinQueryBuilder[T, C]) SetParent ¶
func (b *JoinQueryBuilder[T, C]) SetParent(parent *T) *T
type OrderByQueryBuilder ¶
type OrderByQueryBuilder[T QueryBuilderStrategy[T, C], C any] struct { // contains filtered or unexported fields }
func NewOrderByQueryBuilder ¶
func NewOrderByQueryBuilder[T QueryBuilderStrategy[T, C], C any](strategy interfaces.QueryBuilderStrategy) *OrderByQueryBuilder[T, C]
func (*OrderByQueryBuilder[T, C]) OrderBy ¶
func (qb *OrderByQueryBuilder[T, C]) OrderBy(column, ascDesc string) T
func (*OrderByQueryBuilder[T, C]) OrderByRaw ¶
func (qb *OrderByQueryBuilder[T, C]) OrderByRaw(raw string) T
func (*OrderByQueryBuilder[T, C]) ReOrder ¶
func (qb *OrderByQueryBuilder[T, C]) ReOrder() T
func (*OrderByQueryBuilder[T, C]) SetParent ¶
func (qb *OrderByQueryBuilder[T, C]) SetParent(parent *T) *T
type QueryBuilderStrategy ¶
type QueryBuilderStrategy[T, C any] interface { GetQueryBuilder() T GetWhereBuilder() *query.WhereBuilder[C] GetJoinBuilder() *query.JoinBuilder[C] GetOrderByBuilder() *query.OrderByBuilder[C] }
type SelectQueryBuilder ¶
type SelectQueryBuilder struct {
WhereQueryBuilder[*SelectQueryBuilder, query.SelectBuilder]
JoinQueryBuilder[*SelectQueryBuilder, query.SelectBuilder]
OrderByQueryBuilder[*SelectQueryBuilder, query.SelectBuilder]
Queries *[]structs.Query
QueryBuilderStrategy[SelectQueryBuilder, query.SelectBuilder]
// contains filtered or unexported fields
}
func NewSelectQueryBuilder ¶
func NewSelectQueryBuilder(strategy interfaces.QueryBuilderStrategy) *SelectQueryBuilder
func (*SelectQueryBuilder) Avg ¶
func (qb *SelectQueryBuilder) Avg(column string) *SelectQueryBuilder
func (*SelectQueryBuilder) Build ¶
func (qb *SelectQueryBuilder) Build() (string, []interface{}, error)
func (*SelectQueryBuilder) Count ¶
func (qb *SelectQueryBuilder) Count(columns ...string) *SelectQueryBuilder
func (*SelectQueryBuilder) Distinct ¶
func (qb *SelectQueryBuilder) Distinct(column ...string) *SelectQueryBuilder
func (*SelectQueryBuilder) Dump ¶
func (qb *SelectQueryBuilder) Dump() (string, []interface{}, error)
func (*SelectQueryBuilder) GetJoinBuilder ¶
func (qb *SelectQueryBuilder) GetJoinBuilder() *query.JoinBuilder[query.SelectBuilder]
func (*SelectQueryBuilder) GetOrderByBuilder ¶
func (qb *SelectQueryBuilder) GetOrderByBuilder() *query.OrderByBuilder[query.SelectBuilder]
func (*SelectQueryBuilder) GetQuery ¶
func (qb *SelectQueryBuilder) GetQuery() *structs.Query
func (*SelectQueryBuilder) GetQueryBuilder ¶
func (qb *SelectQueryBuilder) GetQueryBuilder() *SelectQueryBuilder
func (*SelectQueryBuilder) GetWhereBuilder ¶
func (qb *SelectQueryBuilder) GetWhereBuilder() *query.WhereBuilder[query.SelectBuilder]
func (*SelectQueryBuilder) GroupBy ¶
func (qb *SelectQueryBuilder) GroupBy(columns ...string) *SelectQueryBuilder
func (*SelectQueryBuilder) Having ¶
func (qb *SelectQueryBuilder) Having(column, condition string, value interface{}) *SelectQueryBuilder
func (*SelectQueryBuilder) HavingRaw ¶
func (qb *SelectQueryBuilder) HavingRaw(raw string) *SelectQueryBuilder
func (*SelectQueryBuilder) Limit ¶
func (qb *SelectQueryBuilder) Limit(limit int64) *SelectQueryBuilder
func (*SelectQueryBuilder) LockForUpdate ¶
func (qb *SelectQueryBuilder) LockForUpdate() *SelectQueryBuilder
func (*SelectQueryBuilder) Max ¶
func (qb *SelectQueryBuilder) Max(column string) *SelectQueryBuilder
func (*SelectQueryBuilder) Min ¶
func (qb *SelectQueryBuilder) Min(column string) *SelectQueryBuilder
func (*SelectQueryBuilder) Offset ¶
func (qb *SelectQueryBuilder) Offset(offset int64) *SelectQueryBuilder
func (*SelectQueryBuilder) OrHaving ¶
func (qb *SelectQueryBuilder) OrHaving(column, condition string, value interface{}) *SelectQueryBuilder
func (*SelectQueryBuilder) OrHavingRaw ¶
func (qb *SelectQueryBuilder) OrHavingRaw(raw string) *SelectQueryBuilder
func (*SelectQueryBuilder) RawSql ¶
func (qb *SelectQueryBuilder) RawSql() (string, error)
func (*SelectQueryBuilder) Select ¶
func (qb *SelectQueryBuilder) Select(columns ...string) *SelectQueryBuilder
func (*SelectQueryBuilder) SelectRaw ¶
func (qb *SelectQueryBuilder) SelectRaw(raw string, value ...interface{}) *SelectQueryBuilder
func (*SelectQueryBuilder) SharedLock ¶
func (qb *SelectQueryBuilder) SharedLock() *SelectQueryBuilder
func (*SelectQueryBuilder) Skip ¶
func (qb *SelectQueryBuilder) Skip(offset int64) *SelectQueryBuilder
func (*SelectQueryBuilder) Sum ¶
func (qb *SelectQueryBuilder) Sum(column string) *SelectQueryBuilder
func (*SelectQueryBuilder) Table ¶
func (qb *SelectQueryBuilder) Table(table string) *SelectQueryBuilder
func (*SelectQueryBuilder) Take ¶
func (qb *SelectQueryBuilder) Take(limit int64) *SelectQueryBuilder
func (*SelectQueryBuilder) Union ¶
func (qb *SelectQueryBuilder) Union(sb *SelectQueryBuilder) *SelectQueryBuilder
func (*SelectQueryBuilder) UnionAll ¶
func (qb *SelectQueryBuilder) UnionAll(sb *SelectQueryBuilder) *SelectQueryBuilder
type UpdateQueryBuilder ¶
type UpdateQueryBuilder struct {
WhereQueryBuilder[*UpdateQueryBuilder, query.UpdateBuilder]
JoinQueryBuilder[*UpdateQueryBuilder, query.UpdateBuilder]
OrderByQueryBuilder[*UpdateQueryBuilder, query.UpdateBuilder]
QueryBuilderStrategy[UpdateQueryBuilder, query.UpdateBuilder]
// contains filtered or unexported fields
}
func NewUpdateQueryBuilder ¶
func NewUpdateQueryBuilder(strategy interfaces.QueryBuilderStrategy) *UpdateQueryBuilder
func (*UpdateQueryBuilder) Build ¶
func (ub *UpdateQueryBuilder) Build() (string, []interface{}, error)
Build
func (*UpdateQueryBuilder) Dump ¶
func (ub *UpdateQueryBuilder) Dump() (string, []interface{}, error)
func (*UpdateQueryBuilder) GetJoinBuilder ¶
func (qb *UpdateQueryBuilder) GetJoinBuilder() *query.JoinBuilder[query.UpdateBuilder]
func (*UpdateQueryBuilder) GetOrderByBuilder ¶
func (qb *UpdateQueryBuilder) GetOrderByBuilder() *query.OrderByBuilder[query.UpdateBuilder]
func (*UpdateQueryBuilder) GetQueryBuilder ¶
func (qb *UpdateQueryBuilder) GetQueryBuilder() *UpdateQueryBuilder
func (*UpdateQueryBuilder) GetWhereBuilder ¶
func (qb *UpdateQueryBuilder) GetWhereBuilder() *query.WhereBuilder[query.UpdateBuilder]
func (*UpdateQueryBuilder) RawSql ¶
func (ub *UpdateQueryBuilder) RawSql() (string, error)
func (*UpdateQueryBuilder) Table ¶
func (ub *UpdateQueryBuilder) Table(table string) *UpdateQueryBuilder
Table
func (*UpdateQueryBuilder) Update ¶
func (ub *UpdateQueryBuilder) Update(data map[string]interface{}) *UpdateQueryBuilder
Update
type WhereDeleteQueryBuilder ¶
type WhereDeleteQueryBuilder = WhereQueryBuilder[*DeleteQueryBuilder, query.DeleteBuilder]
WhereDeleteQueryBuilder is a type that represents a where delete builder
type WhereQueryBuilder ¶
type WhereQueryBuilder[T QueryBuilderStrategy[T, C], C any] struct { // contains filtered or unexported fields }
func NewWhereQueryBuilder ¶
func NewWhereQueryBuilder[T QueryBuilderStrategy[T, C], C any](strategy interfaces.QueryBuilderStrategy) *WhereQueryBuilder[T, C]
func (*WhereQueryBuilder[T, C]) GetBuilder ¶
func (wb *WhereQueryBuilder[T, C]) GetBuilder() *query.WhereBuilder[C]
GetBuilder is a function that allows you to get the where builder
func (*WhereQueryBuilder[T, C]) OrWhere ¶
func (wb *WhereQueryBuilder[T, C]) OrWhere(column string, condition string, value interface{}) T
OrWhere is a function that allows you to add a or where condition
func (*WhereQueryBuilder[T, C]) OrWhereBetween ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereBetween(column string, min interface{}, max interface{}) T
OrWhereBetween is a function that allows you to add a or where between condition
func (*WhereQueryBuilder[T, C]) OrWhereBetweenColumns ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereBetweenColumns(allColumns []string, column string, min string, max string) T
OrWhereBetweenColumns is a function that allows you to add a or where between columns condition
func (*WhereQueryBuilder[T, C]) OrWhereColumn ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereColumn(allColumns []string, column string, cond ...string) T
OrWhereColumn is a function that allows you to add a or where column condition
func (*WhereQueryBuilder[T, C]) OrWhereColumns ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereColumns(allColumns []string, columns [][]string) T
OrWhereColumns is a function that allows you to add a or where columns condition
func (*WhereQueryBuilder[T, C]) OrWhereDate ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereDate(column string, cond string, date string) T
OrWhereDate is a function that allows you to add a or where date condition
func (*WhereQueryBuilder[T, C]) OrWhereDay ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereDay(column string, cond string, day string) T
OrWhereDay is a function that allows you to add a or where day condition
func (*WhereQueryBuilder[T, C]) OrWhereExists ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereExists(fn func(q *SelectQueryBuilder)) T
OrWhereExists is a function that allows you to add a or where exists condition
func (*WhereQueryBuilder[T, C]) OrWhereExistsSubQuery ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereExistsSubQuery(qb *SelectQueryBuilder) T
OrWhereExistsSubQuery is a function that allows you to add a or where exists condition
func (*WhereQueryBuilder[T, C]) OrWhereFullText ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereFullText(columns []string, value string, options map[string]interface{}) T
OrWhereFullText is a function that allows you to add a or where full text condition
func (*WhereQueryBuilder[T, C]) OrWhereGroup ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereGroup(fn func(wb *WhereQueryBuilder[T, C])) T
OrWhereGroup is a function that allows you to group or where conditions
func (*WhereQueryBuilder[T, C]) OrWhereIn ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereIn(column string, values interface{}) T
OrWhereIn is a function that allows you to add a or where in condition
func (*WhereQueryBuilder[T, C]) OrWhereInSubQuery ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereInSubQuery(column string, qb *SelectQueryBuilder) T
OrWhereInSubQuery is a function that allows you to add a or where in sub query condition
func (*WhereQueryBuilder[T, C]) OrWhereMonth ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereMonth(column string, cond string, month string) T
OrWhereMonth is a function that allows you to add a or where month condition
func (*WhereQueryBuilder[T, C]) OrWhereNot ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereNot(fn func(wb *WhereQueryBuilder[T, C])) T
OrWhereNot is a function that allows you to add a or where not condition
func (*WhereQueryBuilder[T, C]) OrWhereNotBetween ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereNotBetween(column string, min interface{}, max interface{}) T
OrWhereNotBetween is a function that allows you to add a or where not between condition
func (*WhereQueryBuilder[T, C]) OrWhereNotBetweenColumns ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereNotBetweenColumns(allColumns []string, column string, min string, max string) T
OrWhereNotBetweenColumns is a function that allows you to add a or where not between columns condition
func (*WhereQueryBuilder[T, C]) OrWhereNotExists ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereNotExists(fn func(q *SelectQueryBuilder)) T
OrWhereNotExists is a function that allows you to add a or where not exists condition
func (*WhereQueryBuilder[T, C]) OrWhereNotExistsQuery ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereNotExistsQuery(qb *SelectQueryBuilder) T
OrWhereNotExistsQuery is a function that allows you to add a or where not exists condition
func (*WhereQueryBuilder[T, C]) OrWhereNotIn ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereNotIn(column string, values interface{}) T
OrWhereNotIn is a function that allows you to add a or where not in condition
func (*WhereQueryBuilder[T, C]) OrWhereNotInSubQuery ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereNotInSubQuery(column string, qb *SelectQueryBuilder) T
OrWhereNotInSubQuery is a function that allows you to add a or where not in sub query condition
func (*WhereQueryBuilder[T, C]) OrWhereNotNull ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereNotNull(column string) T
OrWhereNotNull is a function that allows you to add a or where not null condition
func (*WhereQueryBuilder[T, C]) OrWhereNull ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereNull(column string) T
OrWhereNull is a function that allows you to add a or where null condition
func (*WhereQueryBuilder[T, C]) OrWhereRaw ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereRaw(raw string, values map[string]any) T
OrWhereRaw adds a raw SQL condition with OR operator
func (*WhereQueryBuilder[T, C]) OrWhereSubQuery ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereSubQuery(column string, condition string, qb *SelectQueryBuilder) T
OrWhereSubQuery is a function that allows you to add a or where query condition
func (*WhereQueryBuilder[T, C]) OrWhereTime ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereTime(column string, cond string, time string) T
OrWhereTime is a function that allows you to add a or where time condition
func (*WhereQueryBuilder[T, C]) OrWhereYear ¶
func (wb *WhereQueryBuilder[T, C]) OrWhereYear(column string, cond string, year string) T
OrWhereYear is a function that allows you to add a or where year condition
func (*WhereQueryBuilder[T, C]) SafeOrWhereRaw ¶
func (wb *WhereQueryBuilder[T, C]) SafeOrWhereRaw(raw string, values map[string]any) T
SafeOrWhereRaw adds a raw where clause with OR operator while enforcing parameter usage.
func (*WhereQueryBuilder[T, C]) SafeWhereRaw ¶
func (wb *WhereQueryBuilder[T, C]) SafeWhereRaw(raw string, values map[string]any) T
SafeWhereRaw adds a raw where clause with AND operator while enforcing parameter usage.
func (*WhereQueryBuilder[T, C]) SetParent ¶
func (b *WhereQueryBuilder[T, C]) SetParent(parent *T) *T
func (*WhereQueryBuilder[T, C]) Where ¶
func (wb *WhereQueryBuilder[T, C]) Where(column string, condition string, value interface{}) T
Where is a function that allows you to add a where condition
func (*WhereQueryBuilder[T, C]) WhereAll ¶
func (wb *WhereQueryBuilder[T, C]) WhereAll(columns []string, condition string, value interface{}) T
WhereAll is a function that allows you to add a where all condition
func (*WhereQueryBuilder[T, C]) WhereAny ¶
func (wb *WhereQueryBuilder[T, C]) WhereAny(columns []string, condition string, value interface{}) T
WhereAny is a function that allows you to add a where any condition
func (*WhereQueryBuilder[T, C]) WhereBetween ¶
func (wb *WhereQueryBuilder[T, C]) WhereBetween(column string, min interface{}, max interface{}) T
WhereBetween is a function that allows you to add a where between condition
func (*WhereQueryBuilder[T, C]) WhereBetweenColumns ¶
func (wb *WhereQueryBuilder[T, C]) WhereBetweenColumns(allColumns []string, column string, min string, max string) T
WhereBetweenColumns is a function that allows you to add a where between columns condition
func (*WhereQueryBuilder[T, C]) WhereColumn ¶
func (wb *WhereQueryBuilder[T, C]) WhereColumn(allColumns []string, column string, cond ...string) T
WhereColumn is a function that allows you to add a where column condition
func (*WhereQueryBuilder[T, C]) WhereColumns ¶
func (wb *WhereQueryBuilder[T, C]) WhereColumns(allColumns []string, columns [][]string) T
WhereColumns is a function that allows you to add a where columns condition
func (*WhereQueryBuilder[T, C]) WhereDate ¶
func (wb *WhereQueryBuilder[T, C]) WhereDate(column string, cond string, date string) T
WhereDate is a function that allows you to add a where date condition
func (*WhereQueryBuilder[T, C]) WhereDay ¶
func (wb *WhereQueryBuilder[T, C]) WhereDay(column string, cond string, day string) T
WhereDay is a function that allows you to add a where day condition
func (*WhereQueryBuilder[T, C]) WhereExists ¶
func (wb *WhereQueryBuilder[T, C]) WhereExists(fn func(q *SelectQueryBuilder)) T
func (*WhereQueryBuilder[T, C]) WhereExistsSubQuery ¶
func (wb *WhereQueryBuilder[T, C]) WhereExistsSubQuery(qb *SelectQueryBuilder) T
WhereDateQuery is a function that allows you to add a where date condition
func (*WhereQueryBuilder[T, C]) WhereFullText ¶
func (wb *WhereQueryBuilder[T, C]) WhereFullText(columns []string, value string, options map[string]interface{}) T
WhereFullText is a function that allows you to add a where full text condition
func (*WhereQueryBuilder[T, C]) WhereGroup ¶
func (wb *WhereQueryBuilder[T, C]) WhereGroup(fn func(wqb *WhereQueryBuilder[T, C])) T
WhereGroup is a function that allows you to group where conditions
func (*WhereQueryBuilder[T, C]) WhereIn ¶
func (wb *WhereQueryBuilder[T, C]) WhereIn(column string, values interface{}) T
OrWhereAny is a function that allows you to add a or where any condition
func (*WhereQueryBuilder[T, C]) WhereInSubQuery ¶
func (wb *WhereQueryBuilder[T, C]) WhereInSubQuery(column string, qb *SelectQueryBuilder) T
WhereInSubQuery is a function that allows you to add a where in sub query condition
func (*WhereQueryBuilder[T, C]) WhereMonth ¶
func (wb *WhereQueryBuilder[T, C]) WhereMonth(column string, cond string, month string) T
WhereMonth is a function that allows you to add a where month condition
func (*WhereQueryBuilder[T, C]) WhereNot ¶
func (wb *WhereQueryBuilder[T, C]) WhereNot(fn func(wb *WhereQueryBuilder[T, C])) T
WhereNot is a function that allows you to add a where not condition
func (*WhereQueryBuilder[T, C]) WhereNotBetween ¶
func (wb *WhereQueryBuilder[T, C]) WhereNotBetween(column string, min interface{}, max interface{}) T
WhereNotBetween is a function that allows you to add a where not between condition
func (*WhereQueryBuilder[T, C]) WhereNotBetweenColumns ¶
func (wb *WhereQueryBuilder[T, C]) WhereNotBetweenColumns(allColumns []string, column string, min string, max string) T
WhereNotBetweenColumns is a function that allows you to add a where not between columns condition
func (*WhereQueryBuilder[T, C]) WhereNotExists ¶
func (wb *WhereQueryBuilder[T, C]) WhereNotExists(fn func(q *SelectQueryBuilder)) T
WhereNotExists is a function that allows you to add a where not exists condition
func (*WhereQueryBuilder[T, C]) WhereNotExistsQuery ¶
func (wb *WhereQueryBuilder[T, C]) WhereNotExistsQuery(qb *SelectQueryBuilder) T
WhereNotExistsQuery is a function that allows you to add a where not exists condition
func (*WhereQueryBuilder[T, C]) WhereNotIn ¶
func (wb *WhereQueryBuilder[T, C]) WhereNotIn(column string, values interface{}) T
OrWhereAll is a function that allows you to add a or where all condition
func (*WhereQueryBuilder[T, C]) WhereNotInSubQuery ¶
func (wb *WhereQueryBuilder[T, C]) WhereNotInSubQuery(column string, qb *SelectQueryBuilder) T
WhereNotInSubQuery is a function that allows you to add a where not in sub query condition
func (*WhereQueryBuilder[T, C]) WhereNotNull ¶
func (wb *WhereQueryBuilder[T, C]) WhereNotNull(column string) T
WhereNotNull is a function that allows you to add a where not null condition
func (*WhereQueryBuilder[T, C]) WhereNull ¶
func (wb *WhereQueryBuilder[T, C]) WhereNull(column string) T
WhereNull is a function that allows you to add a where null condition
func (*WhereQueryBuilder[T, C]) WhereRaw ¶
func (wb *WhereQueryBuilder[T, C]) WhereRaw(raw string, values map[string]any) T
WhereRaw adds a raw SQL condition with AND operator
func (*WhereQueryBuilder[T, C]) WhereSubQuery ¶
func (wb *WhereQueryBuilder[T, C]) WhereSubQuery(column string, condition string, qb *SelectQueryBuilder) T
WhereSubQuery is a function that allows you to add a where query condition
type WhereSelectQueryBuilder ¶
type WhereSelectQueryBuilder = WhereQueryBuilder[*SelectQueryBuilder, query.SelectBuilder]
WhereSelectQueryBuilder is a type that represents a where select builder
type WhereUpdateQueryBuilder ¶
type WhereUpdateQueryBuilder = WhereQueryBuilder[*UpdateQueryBuilder, query.UpdateBuilder]
WhereInsertBuilder is a type that represents a where insert builder