package clause

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

Dependency Relation
	imports 7 packages, and imported by 6 packages


Package-Level Type Names (total 42)
/* sort by: | */
Exprs []Expression ( AndConditions) Build(builder Builder) AndConditions : Expression
Column Column Value interface{}
Builder builder interface ( Builder) AddError(error) error ( Builder) AddVar(Writer, ...interface{}) ( Builder) WriteByte(byte) error ( Builder) WriteQuoted(field interface{}) ( Builder) WriteString(string) (int, error) *gorm.io/gorm.Statement Builder : Writer Builder : io.ByteWriter Builder : io.StringWriter func AndConditions.Build(builder Builder) func Clause.Build(builder Builder) func CommaExpression.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) func gorm.io/gorm.SoftDeleteUpdateClause.Build(Builder)
Clause AfterExpression Expression AfterNameExpression Expression BeforeExpression Expression Builder ClauseBuilder Expression Expression // WHERE Build build clause Clause : 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) func gorm.io/gorm.SoftDeleteUpdateClause.MergeClause(*Clause)
ClauseBuilder clause builder, allows to customize how to build clause func gorm.io/driver/mysql.Dialector.ClauseBuilders() map[string]ClauseBuilder
Column quote with name Alias string Name string Raw bool Table string var PrimaryColumn
CommaExpression represents a group of expressions separated by commas. Exprs []Expression ( CommaExpression) Build(builder Builder) CommaExpression : Expression
Modifier string ( Delete) Build(builder Builder) ( Delete) MergeClause(clause *Clause) ( Delete) Name() string Delete : Expression Delete : Interface
Eq equal to for where Column interface{} Value interface{} ( Eq) Build(builder Builder) ( Eq) NegationBuild(builder Builder) Eq : Expression Eq : NegationExpressionBuilder
Expr raw expression SQL string Vars []interface{} WithoutParentheses bool Build build raw expression Expr : 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 func gorm.io/driver/postgres.Migrator.DeleteSequence(tx *gorm.DB, stmt *gorm.Statement, field *schema.Field, fileType Expr) (err error)
Expression expression interface ( Expression) Build(builder Builder) AndConditions Clause CommaExpression 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 gorm.io/gorm.SoftDeleteUpdateClause 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{}) []Expression func gorm.io/gorm/schema.(*Relationship).ToQueryConditions(ctx context.Context, reflectValue reflect.Value) (conds []Expression) func gorm.io/driver/mysql.Dialector.DefaultValueOf(field *schema.Field) Expression func gorm.io/driver/postgres.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)
From from clause Joins []Join Tables []Table Build build from clause MergeClause merge from clause Name from clause name From : Expression From : Interface
GroupBy group by clause Columns []Column Having []Expression Build build group by clause MergeClause merge group by clause Name from clause name GroupBy : Expression GroupBy : Interface
Gt greater than for where Column interface{} Value interface{} ( Gt) Build(builder Builder) ( Gt) NegationBuild(builder Builder) Gt : Expression Gt : NegationExpressionBuilder
Gte greater than or equal to for where Column interface{} Value interface{} ( Gte) Build(builder Builder) ( Gte) NegationBuild(builder Builder) Gte : Expression Gte : NegationExpressionBuilder
IN Whether a value is within a set of values Column interface{} Values []interface{} ( IN) Build(builder Builder) ( IN) NegationBuild(builder Builder) IN : Expression IN : NegationExpressionBuilder
Modifier string Table Table Build build insert clause MergeClause merge insert clause Name insert clause name Insert : Expression Insert : Interface
Interface clause interface ( Interface) Build(Builder) ( Interface) MergeClause(*Clause) ( Interface) Name() string Delete From GroupBy Insert Limit Locking OnConflict OrderBy Returning Select Set Update Values Where gorm.io/gorm.SoftDeleteDeleteClause gorm.io/gorm.SoftDeleteQueryClause gorm.io/gorm.SoftDeleteUpdateClause Interface : 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.DeletedAt.UpdateClauses(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)
Join clause for from Expression Expression ON Where Table Table Type JoinType Using []string ( Join) Build(builder Builder) Join : Expression
const CrossJoin const InnerJoin const LeftJoin const RightJoin
Like whether string matches regular expression Column interface{} Value interface{} ( Like) Build(builder Builder) ( Like) NegationBuild(builder Builder) Like : Expression Like : NegationExpressionBuilder
Limit limit clause Limit *int Offset int Build build where clause MergeClause merge order by clauses Name where clause name Limit : Expression Limit : Interface
Options string Strength string Table Table Build build where clause MergeClause merge order by clauses Name where clause name Locking : Expression Locking : Interface
Lt less than for where Column interface{} Value interface{} ( Lt) Build(builder Builder) ( Lt) NegationBuild(builder Builder) Lt : Expression Lt : NegationExpressionBuilder
Lte less than or equal to for where Column interface{} Value interface{} ( Lte) Build(builder Builder) ( Lte) NegationBuild(builder Builder) Lte : Expression Lte : NegationExpressionBuilder
NamedExpr raw expression for named expr SQL string Vars []interface{} Build build raw expression NamedExpr : Expression
NegationExpressionBuilder negation expression builder ( NegationExpressionBuilder) NegationBuild(builder Builder) Eq Gt Gte IN Like Lt Lte Neq
Neq not equal to for where Column interface{} Value interface{} ( Neq) Build(builder Builder) ( Neq) NegationBuild(builder Builder) Neq : Expression Neq : NegationExpressionBuilder
Exprs []Expression ( NotConditions) Build(builder Builder) NotConditions : Expression
Columns []Column DoNothing bool DoUpdates Set OnConstraint string TargetWhere Where UpdateAll bool Where Where Build build onConflict clause MergeClause merge onConflict clauses ( OnConflict) Name() string OnConflict : Expression OnConflict : Interface
Exprs []Expression ( OrConditions) Build(builder Builder) OrConditions : Expression
Columns []OrderByColumn Expression Expression Build build where clause MergeClause merge order by clauses Name where clause name OrderBy : Expression OrderBy : Interface
Column Column Desc bool Reorder bool
Columns []Column Build build where clause MergeClause merge order by clauses Name where clause name Returning : Expression Returning : Interface
Select select attrs when querying, updating, creating Columns []Column Distinct bool Expression Expression ( Select) Build(builder Builder) ( Select) MergeClause(clause *Clause) ( Select) Name() string Select : Expression Select : Interface
( Set) Build(builder Builder) MergeClause merge assignments clauses ( Set) Name() string Set : Expression Set : Interface func AssignmentColumns(values []string) Set func Assignments(values map[string]interface{}) Set func gorm.io/gorm/callbacks.ConvertToAssignments(stmt *gorm.Statement) (set Set)
Table quote with name Alias string Name string Raw bool
Modifier string Table Table Build build update clause MergeClause merge update clause Name update clause name Update : Expression Update : Interface
Columns []Column Values [][]interface{} Build build from clause MergeClause merge values clauses Name from clause name Values : Expression Values : 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)
Where where clause Exprs []Expression Build build where clause MergeClause merge where clauses Name where clause name Where : Expression Where : Interface
type With (struct)
( Writer) WriteByte(byte) error ( Writer) WriteString(string) (int, error) Builder (interface) *gorm.io/gorm.Statement bufio.ReadWriter *bufio.Writer *bytes.Buffer *github.com/valyala/bytebufferpool.ByteBuffer *go.uber.org/zap/buffer.Buffer net/http/internal.FlushAfterChunkWriter *strings.Builder Writer : io.ByteWriter Writer : 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) func gorm.io/driver/postgres.Dialector.BindVarTo(writer Writer, stmt *gorm.Statement, v interface{}) func gorm.io/driver/postgres.Dialector.QuoteTo(writer Writer, str string)
Package-Level Functions (total 5)
func And(exprs ...Expression) Expression
func AssignmentColumns(values []string) Set
func Assignments(values map[string]interface{}) Set
func Not(exprs ...Expression) Expression
func Or(exprs ...Expression) Expression
Package-Level Variables (only one)
Package-Level Constants (total 9)
const AndWithSpace = " AND "
const Associations string = "~~~as~~~" // associations
const CrossJoin JoinType = "CROSS"
const CurrentTable string = "~~~ct~~~" // current table
const InnerJoin JoinType = "INNER"
const LeftJoin JoinType = "LEFT"
const OrWithSpace = " OR "
const PrimaryKey string = "~~~py~~~" // primary key
const RightJoin JoinType = "RIGHT"