package clause
Import Path
gorm.io/gorm/clause (on go.dev)
Dependency Relation
imports 7 packages, and imported by 6 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
Package-Level Type Names (total 42)
Exprs []Expression
( AndConditions) Build(builder Builder)
AndConditions : Expression
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
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
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
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)
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)
var PrimaryColumn Column
Package-Level Constants (total 9)
const AndWithSpace = " AND " const Associations string = "~~~as~~~" // associations const CurrentTable string = "~~~ct~~~" // current table const OrWithSpace = " OR " const PrimaryKey string = "~~~py~~~" // primary key
![]() |
The pages are generated with Golds v0.6.7. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @Go100and1 (reachable from the left QR code) to get the latest news of Golds. |