package clause

Import Path
	gorm.io/gorm/clause (on go.dev)

Dependency Relation
	imports 7 packages, and imported by 5 packages

Involved Source Files
	    clause.go
	    delete.go
	    expression.go
	    from.go
	    group_by.go
	    insert.go
	    joins.go
	    limit.go
	    locking.go
	    on_conflict.go
	    order_by.go
	    returning.go
	    select.go
	    set.go
	    update.go
	    values.go
	    where.go
	    with.go

Exported Type Names

type AndConditions (struct) Exprs []Expression (T) Build(builder Builder) T : Expression
type Assignment (struct) Column Column Value interface{}
type Builder (interface) Builder builder interface (T) AddVar(Writer, ...interface{}) (T) WriteByte(byte) error (T) WriteQuoted(field interface{}) (T) WriteString(string) (int, error) gorm.io/gorm.(*Statement) T : Writer T : io.ByteWriter T : io.StringWriter func AndConditions.Build(builder Builder) func Clause.Build(builder Builder) func Delete.Build(builder Builder) func Eq.Build(builder Builder) func Eq.NegationBuild(builder Builder) func Expr.Build(builder Builder) func Expression.Build(builder Builder) func From.Build(builder Builder) func GroupBy.Build(builder Builder) func Gt.Build(builder Builder) func Gt.NegationBuild(builder Builder) func Gte.Build(builder Builder) func Gte.NegationBuild(builder Builder) func IN.Build(builder Builder) func IN.NegationBuild(builder Builder) func Insert.Build(builder Builder) func Interface.Build(Builder) func Join.Build(builder Builder) func Like.Build(builder Builder) func Like.NegationBuild(builder Builder) func Limit.Build(builder Builder) func Locking.Build(builder Builder) func Lt.Build(builder Builder) func Lt.NegationBuild(builder Builder) func Lte.Build(builder Builder) func Lte.NegationBuild(builder Builder) func NamedExpr.Build(builder Builder) func NegationExpressionBuilder.NegationBuild(builder Builder) func Neq.Build(builder Builder) func Neq.NegationBuild(builder Builder) func NotConditions.Build(builder Builder) func OnConflict.Build(builder Builder) func OrConditions.Build(builder Builder) func OrderBy.Build(builder Builder) func Returning.Build(builder Builder) func Select.Build(builder Builder) func Set.Build(builder Builder) func Update.Build(builder Builder) func Values.Build(builder Builder) func Where.Build(builder Builder) func gorm.io/gorm.SoftDeleteDeleteClause.Build(Builder) func gorm.io/gorm.SoftDeleteQueryClause.Build(Builder)
type Clause (struct) Clause AfterExpression Expression AfterNameExpression Expression BeforeExpression Expression Builder ClauseBuilder Expression Expression Name string (T) Build(builder Builder) T : Expression func Delete.MergeClause(clause *Clause) func From.MergeClause(clause *Clause) func GroupBy.MergeClause(clause *Clause) func Insert.MergeClause(clause *Clause) func Interface.MergeClause(*Clause) func Limit.MergeClause(clause *Clause) func Locking.MergeClause(clause *Clause) func OnConflict.MergeClause(clause *Clause) func OrderBy.MergeClause(clause *Clause) func Returning.MergeClause(clause *Clause) func Select.MergeClause(clause *Clause) func Set.MergeClause(clause *Clause) func Update.MergeClause(clause *Clause) func Values.MergeClause(clause *Clause) func Where.MergeClause(clause *Clause) func gorm.io/gorm.SoftDeleteDeleteClause.MergeClause(*Clause) func gorm.io/gorm.SoftDeleteQueryClause.MergeClause(*Clause)
type ClauseBuilder (func) ClauseBuilder clause builder, allows to custmize how to build clause func gorm.io/driver/mysql.Dialector.ClauseBuilders() map[string]ClauseBuilder
type Column (struct) Column quote with name Alias string Name string Raw bool Table string var PrimaryColumn
type Delete (struct) Modifier string (T) Build(builder Builder) (T) MergeClause(clause *Clause) (T) Name() string T : Expression T : Interface
type Eq (struct) Eq equal to for where Column interface{} Value interface{} (T) Build(builder Builder) (T) NegationBuild(builder Builder) T : Expression T : NegationExpressionBuilder
type Expr (struct) Expr raw expression SQL string Vars []interface{} WithoutParentheses bool (T) Build(builder Builder) T : Expression func gorm.io/gorm.Expr(expr string, args ...interface{}) Expr func gorm.io/gorm.Migrator.FullDataTypeOf(*schema.Field) Expr func gorm.io/gorm.Valuer.GormValue(context.Context, *gorm.DB) Expr func gorm.io/gorm/migrator.Migrator.FullDataTypeOf(field *schema.Field) (expr Expr) func gorm.io/driver/mysql.Migrator.FullDataTypeOf(field *schema.Field) Expr
type Expression (interface) Expression expression interface (T) Build(builder Builder) AndConditions Clause Delete Eq Expr From GroupBy Gt Gte IN Insert Interface (interface) Join Like Limit Locking Lt Lte NamedExpr Neq NotConditions OnConflict OrConditions OrderBy Returning Select Set Update Values Where gorm.io/gorm.SoftDeleteDeleteClause gorm.io/gorm.SoftDeleteQueryClause func And(exprs ...Expression) Expression func Not(exprs ...Expression) Expression func Or(exprs ...Expression) Expression func gorm.io/gorm.Dialector.DefaultValueOf(*schema.Field) Expression func gorm.io/gorm.(*Statement).BuildCondition(query interface{}, args ...interface{}) (conds []Expression) func gorm.io/gorm/schema.(*Relationship).ToQueryConditions(reflectValue reflect.Value) (conds []Expression) func gorm.io/driver/mysql.Dialector.DefaultValueOf(field *schema.Field) Expression func And(exprs ...Expression) Expression func Not(exprs ...Expression) Expression func Or(exprs ...Expression) Expression func gorm.io/gorm.(*DB).Clauses(conds ...Expression) (tx *gorm.DB)
type From (struct) From from clause Joins []Join Tables []Table (T) Build(builder Builder) (T) MergeClause(clause *Clause) (T) Name() string T : Expression T : Interface
type GroupBy (struct) GroupBy group by clause Columns []Column Having []Expression (T) Build(builder Builder) (T) MergeClause(clause *Clause) (T) Name() string T : Expression T : Interface
type Gt Eq (struct) Gt greater than for where Column interface{} Value interface{} (T) Build(builder Builder) (T) NegationBuild(builder Builder) T : Expression T : NegationExpressionBuilder
type Gte Eq (struct) Gte greater than or equal to for where Column interface{} Value interface{} (T) Build(builder Builder) (T) NegationBuild(builder Builder) T : Expression T : NegationExpressionBuilder
type IN (struct) IN Whether a value is within a set of values Column interface{} Values []interface{} (T) Build(builder Builder) (T) NegationBuild(builder Builder) T : Expression T : NegationExpressionBuilder
type Insert (struct) Modifier string Table Table (T) Build(builder Builder) (T) MergeClause(clause *Clause) (T) Name() string T : Expression T : Interface
type Interface (interface) Interface clause interface (T) Build(Builder) (T) MergeClause(*Clause) (T) Name() string Delete From GroupBy Insert Limit Locking OnConflict OrderBy Returning Select Set Update Values Where gorm.io/gorm.SoftDeleteDeleteClause gorm.io/gorm.SoftDeleteQueryClause T : Expression func gorm.io/gorm.DeletedAt.DeleteClauses(f *schema.Field) []Interface func gorm.io/gorm.DeletedAt.QueryClauses(f *schema.Field) []Interface func gorm.io/gorm/schema.CreateClausesInterface.CreateClauses(*schema.Field) []Interface func gorm.io/gorm/schema.DeleteClausesInterface.DeleteClauses(*schema.Field) []Interface func gorm.io/gorm/schema.QueryClausesInterface.QueryClauses(*schema.Field) []Interface func gorm.io/gorm/schema.UpdateClausesInterface.UpdateClauses(*schema.Field) []Interface func gorm.io/gorm.(*Statement).AddClause(v Interface) func gorm.io/gorm.(*Statement).AddClauseIfNotExists(v Interface)
type Join (struct) Join join clause for from Expression Expression ON Where Table Table Type JoinType Using []string (T) Build(builder Builder) T : Expression
type JoinType string const CrossJoin const InnerJoin const LeftJoin const RightJoin
type Like Eq (struct) Like whether string matches regular expression Column interface{} Value interface{} (T) Build(builder Builder) (T) NegationBuild(builder Builder) T : Expression T : NegationExpressionBuilder
type Limit (struct) Limit limit clause Limit int Offset int (T) Build(builder Builder) (T) MergeClause(clause *Clause) (T) Name() string T : Expression T : Interface
type Locking (struct) Options string Strength string Table Table (T) Build(builder Builder) (T) MergeClause(clause *Clause) (T) Name() string T : Expression T : Interface
type Lt Eq (struct) Lt less than for where Column interface{} Value interface{} (T) Build(builder Builder) (T) NegationBuild(builder Builder) T : Expression T : NegationExpressionBuilder
type Lte Eq (struct) Lte less than or equal to for where Column interface{} Value interface{} (T) Build(builder Builder) (T) NegationBuild(builder Builder) T : Expression T : NegationExpressionBuilder
type NamedExpr (struct) NamedExpr raw expression for named expr SQL string Vars []interface{} (T) Build(builder Builder) T : Expression
type NegationExpressionBuilder (interface) NegationExpressionBuilder negation expression builder (T) NegationBuild(builder Builder) Eq Gt Gte IN Like Lt Lte Neq
type Neq Eq (struct) Neq not equal to for where Column interface{} Value interface{} (T) Build(builder Builder) (T) NegationBuild(builder Builder) T : Expression T : NegationExpressionBuilder
type NotConditions (struct) Exprs []Expression (T) Build(builder Builder) T : Expression
type OnConflict (struct) Columns []Column DoNothing bool DoUpdates Set Where Where (T) Build(builder Builder) (T) MergeClause(clause *Clause) (T) Name() string T : Expression T : Interface
type OrConditions (struct) Exprs []Expression (T) Build(builder Builder) T : Expression
type OrderBy (struct) Columns []OrderByColumn Expression Expression (T) Build(builder Builder) (T) MergeClause(clause *Clause) (T) Name() string T : Expression T : Interface
type OrderByColumn (struct) Column Column Desc bool Reorder bool
type Returning (struct) Columns []Column (T) Build(builder Builder) (T) MergeClause(clause *Clause) (T) Name() string T : Expression T : Interface
type Select (struct) Select select attrs when querying, updating, creating Columns []Column Distinct bool Expression Expression (T) Build(builder Builder) (T) MergeClause(clause *Clause) (T) Name() string T : Expression T : Interface
type Set ([]) (T) Build(builder Builder) (T) MergeClause(clause *Clause) (T) Name() string T : Expression T : Interface func AssignmentColumns(values []string) Set func Assignments(values map[string]interface{}) Set func gorm.io/gorm/callbacks.ConvertToAssignments(stmt *gorm.Statement) (set Set)
type Table (struct) Table quote with name Alias string Name string Raw bool
type Update (struct) Modifier string Table Table (T) Build(builder Builder) (T) MergeClause(clause *Clause) (T) Name() string T : Expression T : Interface
type Values (struct) Columns []Column Values [][]interface{} (T) Build(builder Builder) (T) MergeClause(clause *Clause) (T) Name() string T : Expression T : Interface func gorm.io/gorm/callbacks.ConvertMapToValuesForCreate(stmt *gorm.Statement, mapValue map[string]interface{}) (values Values) func gorm.io/gorm/callbacks.ConvertSliceOfMapToValuesForCreate(stmt *gorm.Statement, mapValues []map[string]interface{}) (values Values) func gorm.io/gorm/callbacks.ConvertToCreateValues(stmt *gorm.Statement) (values Values)
type Where (struct) Where where clause Exprs []Expression (T) Build(builder Builder) (T) MergeClause(clause *Clause) (T) Name() string T : Expression T : Interface
type With (struct)
type Writer (interface) (T) WriteByte(byte) error (T) WriteString(string) (int, error) Builder (interface) gorm.io/gorm.(*Statement) bufio.ReadWriter bufio.(*Writer) bytes.(*Buffer) net/http/internal.FlushAfterChunkWriter strings.(*Builder) T : io.ByteWriter T : io.StringWriter func Builder.AddVar(Writer, ...interface{}) func gorm.io/gorm.Dialector.BindVarTo(writer Writer, stmt *gorm.Statement, v interface{}) func gorm.io/gorm.Dialector.QuoteTo(Writer, string) func gorm.io/gorm.(*Statement).AddVar(writer Writer, vars ...interface{}) func gorm.io/gorm.(*Statement).QuoteTo(writer Writer, field interface{}) func gorm.io/driver/mysql.Dialector.BindVarTo(writer Writer, stmt *gorm.Statement, v interface{}) func gorm.io/driver/mysql.Dialector.QuoteTo(writer Writer, str string)
Exported Values
func And(exprs ...Expression) Expression
func AssignmentColumns(values []string) Set
func Assignments(values map[string]interface{}) Set
const Associations string = "@@@as@@@" // associations
const CrossJoin JoinType = "CROSS"
const CurrentTable string = "@@@ct@@@" // current table
const InnerJoin JoinType = "INNER"
const LeftJoin JoinType = "LEFT"
func Not(exprs ...Expression) Expression
func Or(exprs ...Expression) Expression
const PrimaryKey string = "@@@py@@@" // primary key
const RightJoin JoinType = "RIGHT"