package clause
Import Path
gorm.io/gorm/clause (on go.dev)
Dependency Relation
imports 7 packages, and imported by 8 packages
Involved Source Files
association.go
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 47)
Exprs []Expression
( AndConditions) Build(builder Builder)
AndConditions : Expression
Assigner assignments provider interface
( Assigner) Assignments() []Assignment
Assignment
Association
Set
func gorm.io/gorm.ChainInterface.Set(assignments ...Assigner) gorm.SetUpdateOnlyInterface[T]
func gorm.io/gorm.CreateInterface.Set(assignments ...Assigner) gorm.SetCreateOrUpdateInterface[T]
func gorm.io/gorm.Interface.Set(assignments ...Assigner) gorm.SetCreateOrUpdateInterface[T]
Column Column
Value interface{}
Assignments implements Assigner for a single Assignment.
Assignment : Assigner
func Assigner.Assignments() []Assignment
func Assignment.Assignments() []Assignment
func Association.Assignments() []Assignment
func Set.Assignments() []Assignment
Association represents an association operation
// Association name
// Filter conditions
// Assignment operations (for Update and Create)
// Operation type
// Values for Create operation
Assignments implements the Assigner interface so that AssociationOperation can be used as a Set method parameter
AssociationAssignments implements the AssociationAssigner interface
Association : Assigner
Association : AssociationAssigner
func Association.AssociationAssignments() []Association
func AssociationAssigner.AssociationAssignments() []Association
AssociationAssigner is an interface for association operation providers
( AssociationAssigner) AssociationAssignments() []Association
Association
AssociationOpType represents association operation types
const OpCreate
const OpDelete
const OpUnlink
const OpUpdate
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.ChainInterface.Build(builder Builder)
func gorm.io/gorm.CreateInterface.Build(builder Builder)
func gorm.io/gorm.Interface.Build(builder Builder)
func gorm.io/gorm.SoftDeleteDeleteClause.Build(Builder)
func gorm.io/gorm.SoftDeleteQueryClause.Build(Builder)
func gorm.io/gorm.SoftDeleteUpdateClause.Build(Builder)
func gorm.io/datatypes.(*JSONArrayExpression).Build(builder Builder)
func gorm.io/datatypes.(*JSONOverlapsExpression).Build(builder Builder)
func gorm.io/datatypes.(*JSONQueryExpression).Build(builder Builder)
func gorm.io/datatypes.(*JSONSetExpression).Build(builder 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
Delete : github.com/polarsignals/frostdb/query/logicalplan.Named
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/datatypes.JSON.GormValue(ctx context.Context, db *gorm.DB) Expr
func gorm.io/datatypes.JSONMap.GormValue(ctx context.Context, db *gorm.DB) Expr
func gorm.io/datatypes.JSONSlice[T].GormValue(ctx context.Context, db *gorm.DB) Expr
func gorm.io/datatypes.JSONType[T].GormValue(ctx context.Context, db *gorm.DB) Expr
func gorm.io/driver/mysql.Migrator.FullDataTypeOf(field *schema.Field) Expr
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.ChainInterface[...] (interface)
gorm.io/gorm.CreateInterface[...] (interface)
gorm.io/gorm.Interface[...] (interface)
gorm.io/gorm.SoftDeleteDeleteClause
gorm.io/gorm.SoftDeleteQueryClause
gorm.io/gorm.SoftDeleteUpdateClause
*gorm.io/datatypes.JSONArrayExpression
*gorm.io/datatypes.JSONOverlapsExpression
*gorm.io/datatypes.JSONQueryExpression
*gorm.io/datatypes.JSONSetExpression
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 And(exprs ...Expression) Expression
func Not(exprs ...Expression) Expression
func Or(exprs ...Expression) Expression
func JoinType.AssociationFrom(name string, subquery Expression) JoinTarget
func gorm.io/gorm.G[T](db *gorm.DB, opts ...Expression) gorm.Interface[T]
func gorm.io/gorm.(*DB).Clauses(conds ...Expression) (tx *gorm.DB)
func gorm.io/datatypes.JSONOverlaps(column Expression, value string) *datatypes.JSONOverlapsExpression
From from clause
Joins []Join
Tables []Table
Build build from clause
MergeClause merge from clause
Name from clause name
From : Expression
From : Interface
From : github.com/polarsignals/frostdb/query/logicalplan.Named
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
GroupBy : github.com/polarsignals/frostdb/query/logicalplan.Named
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
Insert : github.com/polarsignals/frostdb/query/logicalplan.Named
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
Interface : github.com/polarsignals/frostdb/query/logicalplan.Named
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
Association string
Subquery Expression
Table string
Type JoinType
( JoinTarget) As(name string) JoinTarget
func Has(name string) JoinTarget
func JoinTarget.As(name string) JoinTarget
func JoinType.Association(name string) JoinTarget
func JoinType.AssociationFrom(name string, subquery Expression) JoinTarget
func gorm.io/gorm.ChainInterface.Joins(query JoinTarget, on func(db gorm.JoinBuilder, joinTable Table, curTable Table) error) gorm.ChainInterface[T]
func gorm.io/gorm.CreateInterface.Joins(query JoinTarget, on func(db gorm.JoinBuilder, joinTable Table, curTable Table) error) gorm.ChainInterface[T]
func gorm.io/gorm.Interface.Joins(query JoinTarget, on func(db gorm.JoinBuilder, joinTable Table, curTable Table) error) gorm.ChainInterface[T]
( JoinType) Association(name string) JoinTarget
( JoinType) AssociationFrom(name string, subquery Expression) JoinTarget
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
Limit : github.com/polarsignals/frostdb/query/logicalplan.Named
Options string
Strength string
Table Table
Build build where clause
MergeClause merge order by clauses
Name where clause name
Locking : Expression
Locking : Interface
Locking : github.com/polarsignals/frostdb/query/logicalplan.Named
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
OnConflict : github.com/polarsignals/frostdb/query/logicalplan.Named
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
OrderBy : github.com/polarsignals/frostdb/query/logicalplan.Named
Columns []Column
Build build where clause
MergeClause merge order by clauses
Name where clause name
Returning : Expression
Returning : Interface
Returning : github.com/polarsignals/frostdb/query/logicalplan.Named
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
Select : github.com/polarsignals/frostdb/query/logicalplan.Named
Assignments implements Assigner for Set.
( Set) Build(builder Builder)
MergeClause merge assignments clauses
( Set) Name() string
Set : Assigner
Set : Expression
Set : Interface
Set : github.com/polarsignals/frostdb/query/logicalplan.Named
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
Update : github.com/polarsignals/frostdb/query/logicalplan.Named
Columns []Column
Values [][]interface{}
Build build from clause
MergeClause merge values clauses
Name from clause name
Values : Expression
Values : Interface
Values : github.com/polarsignals/frostdb/query/logicalplan.Named
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
Where : github.com/polarsignals/frostdb/query/logicalplan.Named
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/apache/thrift/lib/go/thrift.RichTransport
*github.com/apache/thrift/lib/go/thrift.StreamTransport
github.com/apache/thrift/lib/go/thrift.TBufferedTransport
*github.com/apache/thrift/lib/go/thrift.TFramedTransport
*github.com/apache/thrift/lib/go/thrift.THttpClient
github.com/apache/thrift/lib/go/thrift.TMemoryBuffer
github.com/apache/thrift/lib/go/thrift.TRichTransport (interface)
*github.com/libp2p/go-buffer-pool.Buffer
*github.com/libp2p/go-buffer-pool.Writer
github.com/redis/go-redis/v9/internal/proto.Writer
github.com/yuin/goldmark/util.BufWriter (interface)
*go.uber.org/zap/buffer.Buffer
*hash/maphash.Hash
*log/slog/internal/buffer.Buffer
mvdan.cc/sh/v3/syntax.Printer
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)
Package-Level Functions (total 7)
func And(exprs ...Expression) Expression func AssignmentColumns(values []string) Set func Assignments(values map[string]interface{}) Set func Has(name string) JoinTarget func Not(exprs ...Expression) Expression func Or(exprs ...Expression) Expression
Package-Level Variables (only one)
var PrimaryColumn Column
Package-Level Constants (total 17)
const AndWithSpace = " AND " const Associations string = "~~~as~~~" // associations const CurrentTable string = "~~~ct~~~" // current table const LockingOptionsNoWait = "NOWAIT" const LockingOptionsSkipLocked = "SKIP LOCKED" const LockingStrengthUpdate = "UPDATE" const OpCreate AssociationOpType = 3 // Create association records with assignments const OpDelete AssociationOpType = 1 // Delete association records const OpUnlink AssociationOpType = 0 // Unlink association const OpUpdate AssociationOpType = 2 // Update association records const OrWithSpace = " OR " const PrimaryKey string = "~~~py~~~" // primary key![]() |
The pages are generated with Golds v0.8.2. (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 @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |