selects

package
v0.17.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 6, 2023 License: MIT Imports: 12 Imported by: 3

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrMissingRelationship = fmt.Errorf("missing relationship")
	ErrMissingField        = fmt.Errorf("missing related field")
)

Functions

func InitializeRelationships

func InitializeRelationships(v any) error

func Load

func Load(tx *sqlx.Tx, v any, relation string) error

func LoadContext added in v0.11.4

func LoadContext(ctx context.Context, tx *sqlx.Tx, v any, relation string) error

func LoadMissing added in v0.14.0

func LoadMissing(tx *sqlx.Tx, v any, relation string) error

func LoadMissingContext added in v0.14.0

func LoadMissingContext(ctx context.Context, tx *sqlx.Tx, v any, relation string) error

func NewSelects

func NewSelects() *selects

Types

type AfterLoader

type AfterLoader interface {
	AfterLoad(ctx context.Context, tx *sqlx.Tx) error
}

type AfterSaver

type AfterSaver interface {
	AfterSave(ctx context.Context, tx *sqlx.Tx) error
}

type BeforeSaver

type BeforeSaver interface {
	BeforeSave(ctx context.Context, tx *sqlx.Tx) error
}

type BelongsTo

type BelongsTo[T models.Model] struct {
	// contains filtered or unexported fields
}

func (BelongsTo) ForeignKeys added in v0.16.5

func (r BelongsTo) ForeignKeys() []*ForeignKey

func (*BelongsTo[T]) Initialize

func (r *BelongsTo[T]) Initialize(parent any, field reflect.StructField) error

func (*BelongsTo[T]) Load

func (r *BelongsTo[T]) Load(ctx context.Context, tx *sqlx.Tx, relations []Relationship) error

func (*BelongsTo) Loaded

func (v *BelongsTo) Loaded() bool

func (*BelongsTo) MarshalJSON

func (v *BelongsTo) MarshalJSON() ([]byte, error)

func (BelongsTo) Subquery added in v0.7.0

func (r BelongsTo) Subquery() *SubBuilder

func (*BelongsTo) Value

func (v *BelongsTo) Value() (T, bool)

type Builder

type Builder[T models.Model] struct {
	// contains filtered or unexported fields
}

func From

func From[T models.Model]() *Builder[T]

func New

func New[T models.Model]() *Builder[T]

func NewEmpty

func NewEmpty[T models.Model]() *Builder[T]

func (*Builder[T]) AddGroupBy

func (b *Builder[T]) AddGroupBy(columns ...string) *Builder[T]

func (*Builder[T]) AddSelect

func (b *Builder[T]) AddSelect(columns ...string) *Builder[T]

func (*Builder[T]) AddSelectFunction added in v0.4.1

func (b *Builder[T]) AddSelectFunction(function, column string) *Builder[T]

func (*Builder[T]) AddSelectSubquery

func (b *Builder[T]) AddSelectSubquery(sb QueryBuilder, as string) *Builder[T]

func (*Builder[T]) And

func (b *Builder[T]) And(cb func(q *Conditions)) *Builder[T]

func (*Builder[T]) Clone added in v0.3.1

func (b *Builder[T]) Clone() *Builder[T]

func (*Builder[T]) Context added in v0.10.0

func (b *Builder[T]) Context() context.Context

func (*Builder[T]) CrossJoin added in v0.16.0

func (b *Builder[T]) CrossJoin(table, localColumn, operator, foreignColumn string) *Builder[T]

func (*Builder[T]) CrossJoinOn added in v0.16.0

func (b *Builder[T]) CrossJoinOn(table string, cb func(q *Conditions)) *Builder[T]

func (*Builder[T]) Distinct

func (b *Builder[T]) Distinct() *Builder[T]

func (*Builder[T]) Dump

func (b *Builder[T]) Dump() *Builder[T]

func (*Builder[T]) Find

func (b *Builder[T]) Find(tx *sqlx.Tx, primaryKeyValue any) (T, error)

func (*Builder[T]) First

func (b *Builder[T]) First(tx *sqlx.Tx) (T, error)

func (*Builder[T]) From

func (b *Builder[T]) From(table string) *Builder[T]

func (*Builder[T]) Get

func (b *Builder[T]) Get(tx *sqlx.Tx) ([]T, error)

func (*Builder[T]) GetTable added in v0.16.1

func (b *Builder[T]) GetTable() string

func (*Builder[T]) GroupBy

func (b *Builder[T]) GroupBy(columns ...string) *Builder[T]

func (*Builder[T]) Having

func (b *Builder[T]) Having(column, operator string, value any) *Builder[T]

func (*Builder[T]) HavingAnd

func (b *Builder[T]) HavingAnd(cb func(q *Conditions)) *Builder[T]

func (*Builder[T]) HavingColumn added in v0.4.0

func (b *Builder[T]) HavingColumn(column, operator string, valueColumn string) *Builder[T]

func (*Builder[T]) HavingExists added in v0.4.0

func (b *Builder[T]) HavingExists(query QueryBuilder) *Builder[T]

func (*Builder[T]) HavingHas added in v0.7.0

func (b *Builder[T]) HavingHas(relation string, cb func(q *SubBuilder) *SubBuilder) *Builder[T]

func (*Builder[T]) HavingIn added in v0.4.0

func (b *Builder[T]) HavingIn(column string, values []any) *Builder[T]

func (*Builder[T]) HavingOr

func (b *Builder[T]) HavingOr(cb func(q *Conditions)) *Builder[T]

func (*Builder[T]) HavingRaw added in v0.8.0

func (b *Builder[T]) HavingRaw(rawSql string, bindings ...any) *Builder[T]

func (*Builder[T]) HavingSubquery added in v0.6.0

func (b *Builder[T]) HavingSubquery(subquery QueryBuilder, operator string, value any) *Builder[T]

func (*Builder[T]) InnerJoin added in v0.16.0

func (b *Builder[T]) InnerJoin(table, localColumn, operator, foreignColumn string) *Builder[T]

func (*Builder[T]) InnerJoinOn added in v0.16.0

func (b *Builder[T]) InnerJoinOn(table string, cb func(q *Conditions)) *Builder[T]

func (*Builder[T]) Join

func (b *Builder[T]) Join(table, localColumn, operator, foreignColumn string) *Builder[T]

func (*Builder[T]) JoinOn added in v0.16.0

func (b *Builder[T]) JoinOn(table string, cb func(q *Conditions)) *Builder[T]

func (*Builder[T]) LeftJoin added in v0.16.0

func (b *Builder[T]) LeftJoin(table, localColumn, operator, foreignColumn string) *Builder[T]

func (*Builder[T]) LeftJoinOn added in v0.16.0

func (b *Builder[T]) LeftJoinOn(table string, cb func(q *Conditions)) *Builder[T]

func (*Builder[T]) Limit

func (b *Builder[T]) Limit(limit int) *Builder[T]

func (*Builder[T]) Load added in v0.3.2

func (b *Builder[T]) Load(tx *sqlx.Tx, v any) error

func (*Builder[T]) LoadOne added in v0.3.2

func (b *Builder[T]) LoadOne(tx *sqlx.Tx, v any) error

func (*Builder[T]) Offset

func (b *Builder[T]) Offset(offset int) *Builder[T]

func (*Builder[T]) Or

func (b *Builder[T]) Or(cb func(q *Conditions)) *Builder[T]

func (*Builder[T]) OrHaving

func (b *Builder[T]) OrHaving(column, operator string, value any) *Builder[T]

func (*Builder[T]) OrHavingColumn added in v0.4.0

func (b *Builder[T]) OrHavingColumn(column, operator string, valueColumn string) *Builder[T]

func (*Builder[T]) OrHavingExists added in v0.4.0

func (b *Builder[T]) OrHavingExists(query QueryBuilder) *Builder[T]

func (*Builder[T]) OrHavingHas added in v0.7.0

func (b *Builder[T]) OrHavingHas(relation string, cb func(q *SubBuilder) *SubBuilder) *Builder[T]

func (*Builder[T]) OrHavingIn added in v0.4.0

func (b *Builder[T]) OrHavingIn(column string, values []any) *Builder[T]

func (*Builder[T]) OrHavingRaw added in v0.8.0

func (b *Builder[T]) OrHavingRaw(rawSql string, bindings ...any) *Builder[T]

func (*Builder[T]) OrHavingSubquery added in v0.6.0

func (b *Builder[T]) OrHavingSubquery(subquery QueryBuilder, operator string, value any) *Builder[T]

func (*Builder[T]) OrWhere

func (b *Builder[T]) OrWhere(column, operator string, value any) *Builder[T]

func (*Builder[T]) OrWhereColumn

func (b *Builder[T]) OrWhereColumn(column, operator string, valueColumn string) *Builder[T]

func (*Builder[T]) OrWhereExists added in v0.4.0

func (b *Builder[T]) OrWhereExists(query QueryBuilder) *Builder[T]

func (*Builder[T]) OrWhereHas added in v0.7.0

func (b *Builder[T]) OrWhereHas(relation string, cb func(q *SubBuilder) *SubBuilder) *Builder[T]

func (*Builder[T]) OrWhereIn

func (b *Builder[T]) OrWhereIn(column string, values []any) *Builder[T]

func (*Builder[T]) OrWhereRaw added in v0.8.0

func (b *Builder[T]) OrWhereRaw(rawSql string, bindings ...any) *Builder[T]

func (*Builder[T]) OrWhereSubquery added in v0.6.0

func (b *Builder[T]) OrWhereSubquery(subquery QueryBuilder, operator string, value any) *Builder[T]

func (*Builder[T]) OrderBy

func (b *Builder[T]) OrderBy(column string) *Builder[T]

func (*Builder[T]) OrderByDesc added in v0.4.2

func (b *Builder[T]) OrderByDesc(column string) *Builder[T]

func (*Builder[T]) RightJoin added in v0.16.0

func (b *Builder[T]) RightJoin(table, localColumn, operator, foreignColumn string) *Builder[T]

func (*Builder[T]) RightJoinOn added in v0.16.0

func (b *Builder[T]) RightJoinOn(table string, cb func(q *Conditions)) *Builder[T]

func (*Builder[T]) Select

func (b *Builder[T]) Select(columns ...string) *Builder[T]

func (*Builder[T]) SelectFunction added in v0.4.0

func (b *Builder[T]) SelectFunction(function, column string) *Builder[T]

func (*Builder[T]) SelectSubquery

func (b *Builder[T]) SelectSubquery(sb QueryBuilder, as string) *Builder[T]

func (*Builder[T]) ToSQL

func (b *Builder[T]) ToSQL(d dialects.Dialect) (string, []any, error)

func (*Builder[T]) Where

func (b *Builder[T]) Where(column, operator string, value any) *Builder[T]

func (*Builder[T]) WhereColumn

func (b *Builder[T]) WhereColumn(column, operator string, valueColumn string) *Builder[T]

func (*Builder[T]) WhereExists added in v0.4.0

func (b *Builder[T]) WhereExists(query QueryBuilder) *Builder[T]

func (*Builder[T]) WhereHas added in v0.7.0

func (b *Builder[T]) WhereHas(relation string, cb func(q *SubBuilder) *SubBuilder) *Builder[T]

func (*Builder[T]) WhereIn

func (b *Builder[T]) WhereIn(column string, values []any) *Builder[T]

func (*Builder[T]) WhereRaw added in v0.8.0

func (b *Builder[T]) WhereRaw(rawSql string, bindings ...any) *Builder[T]

func (*Builder[T]) WhereSubquery added in v0.6.0

func (b *Builder[T]) WhereSubquery(subquery QueryBuilder, operator string, value any) *Builder[T]

func (*Builder[T]) With added in v0.5.0

func (b *Builder[T]) With(withs ...string) *Builder[T]

func (*Builder[T]) WithContext added in v0.10.0

func (b *Builder[T]) WithContext(ctx context.Context) *Builder[T]

func (*Builder[T]) WithScope added in v0.9.0

func (b *Builder[T]) WithScope(scope *Scope) *Builder[T]

func (*Builder[T]) WithoutGlobalScope added in v0.9.1

func (b *Builder[T]) WithoutGlobalScope(scope *Scope) *Builder[T]

func (*Builder[T]) WithoutScope added in v0.9.0

func (b *Builder[T]) WithoutScope(scope *Scope) *Builder[T]

type Conditions added in v0.16.0

type Conditions struct {
	// contains filtered or unexported fields
}

func (*Conditions) And added in v0.16.0

func (c *Conditions) And(cb func(q *Conditions)) *Conditions

func (*Conditions) Clone added in v0.16.0

func (c *Conditions) Clone() *Conditions

func (*Conditions) Or added in v0.16.0

func (c *Conditions) Or(cb func(q *Conditions)) *Conditions

func (*Conditions) OrWhere added in v0.16.0

func (c *Conditions) OrWhere(column, operator string, value any) *Conditions

func (*Conditions) OrWhereColumn added in v0.16.0

func (c *Conditions) OrWhereColumn(column, operator string, valueColumn string) *Conditions

func (*Conditions) OrWhereExists added in v0.16.0

func (c *Conditions) OrWhereExists(query QueryBuilder) *Conditions

func (*Conditions) OrWhereHas added in v0.16.0

func (c *Conditions) OrWhereHas(relation string, cb func(q *SubBuilder) *SubBuilder) *Conditions

func (*Conditions) OrWhereIn added in v0.16.0

func (c *Conditions) OrWhereIn(column string, values []any) *Conditions

func (*Conditions) OrWhereRaw added in v0.16.0

func (c *Conditions) OrWhereRaw(rawSql string, bindings ...any) *Conditions

func (*Conditions) OrWhereSubquery added in v0.16.0

func (c *Conditions) OrWhereSubquery(subquery QueryBuilder, operator string, value any) *Conditions

func (*Conditions) ToSQL added in v0.16.0

func (c *Conditions) ToSQL(d dialects.Dialect) (string, []any, error)

func (*Conditions) Where added in v0.16.0

func (c *Conditions) Where(column, operator string, value any) *Conditions

func (*Conditions) WhereColumn added in v0.16.0

func (c *Conditions) WhereColumn(column, operator string, valueColumn string) *Conditions

func (*Conditions) WhereExists added in v0.16.0

func (c *Conditions) WhereExists(query QueryBuilder) *Conditions

func (*Conditions) WhereHas added in v0.16.0

func (c *Conditions) WhereHas(relation string, cb func(q *SubBuilder) *SubBuilder) *Conditions

func (*Conditions) WhereIn added in v0.16.0

func (c *Conditions) WhereIn(column string, values []any) *Conditions

func (*Conditions) WhereRaw added in v0.16.0

func (c *Conditions) WhereRaw(rawSql string, bindings ...any) *Conditions

func (*Conditions) WhereSubquery added in v0.16.0

func (c *Conditions) WhereSubquery(subquery QueryBuilder, operator string, value any) *Conditions

type ForeignKey added in v0.16.5

type ForeignKey struct {
	LocalKey     string
	RelatedTable string
	RelatedKey   string
}

func (*ForeignKey) Equal added in v0.16.5

func (f *ForeignKey) Equal(v *ForeignKey) bool

type HasMany

type HasMany[T models.Model] struct {
	// contains filtered or unexported fields
}

func (HasMany) ForeignKeys added in v0.16.5

func (r HasMany) ForeignKeys() []*ForeignKey

func (*HasMany[T]) Initialize

func (r *HasMany[T]) Initialize(parent any, field reflect.StructField) error

func (*HasMany[T]) Load

func (r *HasMany[T]) Load(ctx context.Context, tx *sqlx.Tx, relations []Relationship) error

func (*HasMany) Loaded

func (v *HasMany) Loaded() bool

func (*HasMany) MarshalJSON

func (v *HasMany) MarshalJSON() ([]byte, error)

func (HasMany) Subquery added in v0.7.0

func (r HasMany) Subquery() *SubBuilder

func (*HasMany) Value

func (v *HasMany) Value() (T, bool)

type HasOne

type HasOne[T models.Model] struct {
	// contains filtered or unexported fields
}

HasOne tags `local` `foreign`

func (HasOne) ForeignKeys added in v0.16.5

func (r HasOne) ForeignKeys() []*ForeignKey

func (*HasOne[T]) Initialize

func (r *HasOne[T]) Initialize(parent any, field reflect.StructField) error

func (*HasOne[T]) Load

func (r *HasOne[T]) Load(ctx context.Context, tx *sqlx.Tx, relations []Relationship) error
	return nil
}

func (*HasOne) Loaded

func (v *HasOne) Loaded() bool

func (*HasOne) MarshalJSON

func (v *HasOne) MarshalJSON() ([]byte, error)

func (HasOne) Subquery added in v0.7.0

func (r HasOne) Subquery() *SubBuilder

func (*HasOne) Value

func (v *HasOne) Value() (T, bool)

type QueryBuilder added in v0.4.1

type QueryBuilder interface {
	builder.ToSQLer
	// contains filtered or unexported methods
}

type Relationship

type Relationship interface {
	Subquery() *SubBuilder
	Initialize(self any, field reflect.StructField) error
	Load(ctx context.Context, tx *sqlx.Tx, relations []Relationship) error
	Loaded() bool
	ForeignKeys() []*ForeignKey
}

type Scope added in v0.9.0

type Scope struct {
	Name  string
	Apply ScopeFunc
}

type ScopeFunc added in v0.9.0

type ScopeFunc func(b *SubBuilder) *SubBuilder

type Scoper added in v0.9.1

type Scoper interface {
	Scopes() []*Scope
}

type SubBuilder added in v0.7.0

type SubBuilder struct {
	// contains filtered or unexported fields
}

func NewSubBuilder added in v0.7.0

func NewSubBuilder() *SubBuilder

func (*SubBuilder) AddGroupBy added in v0.7.0

func (b *SubBuilder) AddGroupBy(columns ...string) *SubBuilder

func (*SubBuilder) AddSelect added in v0.7.0

func (b *SubBuilder) AddSelect(columns ...string) *SubBuilder

func (*SubBuilder) AddSelectFunction added in v0.7.0

func (b *SubBuilder) AddSelectFunction(function, column string) *SubBuilder

func (*SubBuilder) AddSelectSubquery added in v0.7.0

func (b *SubBuilder) AddSelectSubquery(sb QueryBuilder, as string) *SubBuilder

func (*SubBuilder) And added in v0.7.0

func (b *SubBuilder) And(cb func(q *Conditions)) *SubBuilder

func (*SubBuilder) Clone added in v0.7.0

func (b *SubBuilder) Clone() *SubBuilder

func (*SubBuilder) Context added in v0.10.0

func (b *SubBuilder) Context() context.Context

func (*SubBuilder) CrossJoin added in v0.16.0

func (b *SubBuilder) CrossJoin(table, localColumn, operator, foreignColumn string) *SubBuilder

func (*SubBuilder) CrossJoinOn added in v0.16.0

func (b *SubBuilder) CrossJoinOn(table string, cb func(q *Conditions)) *SubBuilder

func (*SubBuilder) Distinct added in v0.7.0

func (b *SubBuilder) Distinct() *SubBuilder

func (*SubBuilder) Dump added in v0.7.0

func (b *SubBuilder) Dump() *SubBuilder

func (*SubBuilder) From added in v0.7.0

func (b *SubBuilder) From(table string) *SubBuilder

func (*SubBuilder) GetTable added in v0.16.1

func (b *SubBuilder) GetTable() string

func (*SubBuilder) GroupBy added in v0.7.0

func (b *SubBuilder) GroupBy(columns ...string) *SubBuilder

func (*SubBuilder) Having added in v0.7.0

func (b *SubBuilder) Having(column, operator string, value any) *SubBuilder

func (*SubBuilder) HavingAnd added in v0.7.0

func (b *SubBuilder) HavingAnd(cb func(q *Conditions)) *SubBuilder

func (*SubBuilder) HavingColumn added in v0.7.0

func (b *SubBuilder) HavingColumn(column, operator string, valueColumn string) *SubBuilder

func (*SubBuilder) HavingExists added in v0.7.0

func (b *SubBuilder) HavingExists(query QueryBuilder) *SubBuilder

func (*SubBuilder) HavingHas added in v0.7.0

func (b *SubBuilder) HavingHas(relation string, cb func(q *SubBuilder) *SubBuilder) *SubBuilder

func (*SubBuilder) HavingIn added in v0.7.0

func (b *SubBuilder) HavingIn(column string, values []any) *SubBuilder

func (*SubBuilder) HavingOr added in v0.7.0

func (b *SubBuilder) HavingOr(cb func(q *Conditions)) *SubBuilder

func (*SubBuilder) HavingRaw added in v0.8.0

func (b *SubBuilder) HavingRaw(rawSql string, bindings ...any) *SubBuilder

func (*SubBuilder) HavingSubquery added in v0.7.0

func (b *SubBuilder) HavingSubquery(subquery QueryBuilder, operator string, value any) *SubBuilder

func (*SubBuilder) InnerJoin added in v0.16.0

func (b *SubBuilder) InnerJoin(table, localColumn, operator, foreignColumn string) *SubBuilder

func (*SubBuilder) InnerJoinOn added in v0.16.0

func (b *SubBuilder) InnerJoinOn(table string, cb func(q *Conditions)) *SubBuilder

func (*SubBuilder) Join added in v0.16.0

func (b *SubBuilder) Join(table, localColumn, operator, foreignColumn string) *SubBuilder

func (*SubBuilder) JoinOn added in v0.16.0

func (b *SubBuilder) JoinOn(table string, cb func(q *Conditions)) *SubBuilder

func (*SubBuilder) LeftJoin added in v0.16.0

func (b *SubBuilder) LeftJoin(table, localColumn, operator, foreignColumn string) *SubBuilder

func (*SubBuilder) LeftJoinOn added in v0.16.0

func (b *SubBuilder) LeftJoinOn(table string, cb func(q *Conditions)) *SubBuilder

func (*SubBuilder) Limit added in v0.7.0

func (b *SubBuilder) Limit(limit int) *SubBuilder

func (*SubBuilder) Offset added in v0.7.0

func (b *SubBuilder) Offset(offset int) *SubBuilder

func (*SubBuilder) Or added in v0.7.0

func (b *SubBuilder) Or(cb func(q *Conditions)) *SubBuilder

func (*SubBuilder) OrHaving added in v0.7.0

func (b *SubBuilder) OrHaving(column, operator string, value any) *SubBuilder

func (*SubBuilder) OrHavingColumn added in v0.7.0

func (b *SubBuilder) OrHavingColumn(column, operator string, valueColumn string) *SubBuilder

func (*SubBuilder) OrHavingExists added in v0.7.0

func (b *SubBuilder) OrHavingExists(query QueryBuilder) *SubBuilder

func (*SubBuilder) OrHavingHas added in v0.7.0

func (b *SubBuilder) OrHavingHas(relation string, cb func(q *SubBuilder) *SubBuilder) *SubBuilder

func (*SubBuilder) OrHavingIn added in v0.7.0

func (b *SubBuilder) OrHavingIn(column string, values []any) *SubBuilder

func (*SubBuilder) OrHavingRaw added in v0.8.0

func (b *SubBuilder) OrHavingRaw(rawSql string, bindings ...any) *SubBuilder

func (*SubBuilder) OrHavingSubquery added in v0.7.0

func (b *SubBuilder) OrHavingSubquery(subquery QueryBuilder, operator string, value any) *SubBuilder

func (*SubBuilder) OrWhere added in v0.7.0

func (b *SubBuilder) OrWhere(column, operator string, value any) *SubBuilder

func (*SubBuilder) OrWhereColumn added in v0.7.0

func (b *SubBuilder) OrWhereColumn(column, operator string, valueColumn string) *SubBuilder

func (*SubBuilder) OrWhereExists added in v0.7.0

func (b *SubBuilder) OrWhereExists(query QueryBuilder) *SubBuilder

func (*SubBuilder) OrWhereHas added in v0.7.0

func (b *SubBuilder) OrWhereHas(relation string, cb func(q *SubBuilder) *SubBuilder) *SubBuilder

func (*SubBuilder) OrWhereIn added in v0.7.0

func (b *SubBuilder) OrWhereIn(column string, values []any) *SubBuilder

func (*SubBuilder) OrWhereRaw added in v0.8.0

func (b *SubBuilder) OrWhereRaw(rawSql string, bindings ...any) *SubBuilder

func (*SubBuilder) OrWhereSubquery added in v0.7.0

func (b *SubBuilder) OrWhereSubquery(subquery QueryBuilder, operator string, value any) *SubBuilder

func (*SubBuilder) OrderBy added in v0.7.0

func (b *SubBuilder) OrderBy(column string) *SubBuilder

func (*SubBuilder) OrderByDesc added in v0.7.0

func (b *SubBuilder) OrderByDesc(column string) *SubBuilder

func (*SubBuilder) RightJoin added in v0.16.0

func (b *SubBuilder) RightJoin(table, localColumn, operator, foreignColumn string) *SubBuilder

func (*SubBuilder) RightJoinOn added in v0.16.0

func (b *SubBuilder) RightJoinOn(table string, cb func(q *Conditions)) *SubBuilder

func (*SubBuilder) Select added in v0.7.0

func (b *SubBuilder) Select(columns ...string) *SubBuilder

func (*SubBuilder) SelectFunction added in v0.7.0

func (b *SubBuilder) SelectFunction(function, column string) *SubBuilder

func (*SubBuilder) SelectSubquery added in v0.7.0

func (b *SubBuilder) SelectSubquery(sb QueryBuilder, as string) *SubBuilder

func (*SubBuilder) ToSQL added in v0.7.0

func (b *SubBuilder) ToSQL(d dialects.Dialect) (string, []any, error)

func (*SubBuilder) Where added in v0.7.0

func (b *SubBuilder) Where(column, operator string, value any) *SubBuilder

func (*SubBuilder) WhereColumn added in v0.7.0

func (b *SubBuilder) WhereColumn(column, operator string, valueColumn string) *SubBuilder

func (*SubBuilder) WhereExists added in v0.7.0

func (b *SubBuilder) WhereExists(query QueryBuilder) *SubBuilder

func (*SubBuilder) WhereHas added in v0.7.0

func (b *SubBuilder) WhereHas(relation string, cb func(q *SubBuilder) *SubBuilder) *SubBuilder

func (*SubBuilder) WhereIn added in v0.7.0

func (b *SubBuilder) WhereIn(column string, values []any) *SubBuilder

func (*SubBuilder) WhereRaw added in v0.8.0

func (b *SubBuilder) WhereRaw(rawSql string, bindings ...any) *SubBuilder

func (*SubBuilder) WhereSubquery added in v0.7.0

func (b *SubBuilder) WhereSubquery(subquery QueryBuilder, operator string, value any) *SubBuilder

func (*SubBuilder) WithContext added in v0.10.0

func (b *SubBuilder) WithContext(ctx context.Context) *SubBuilder

func (*SubBuilder) WithScope added in v0.9.0

func (b *SubBuilder) WithScope(scope *Scope) *SubBuilder

func (*SubBuilder) WithoutGlobalScope added in v0.9.3

func (b *SubBuilder) WithoutGlobalScope(scope *Scope) *SubBuilder

func (*SubBuilder) WithoutScope added in v0.9.0

func (b *SubBuilder) WithoutScope(scope *Scope) *SubBuilder

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL