Versions in this module Expand all Collapse all v1 v1.1.0 May 27, 2025 v1.0.9 May 22, 2025 Changes in this version + func ParseExprStatement(statement string, value []any) (newStatement string, fields []string, values []any) + func RegisterFunc(funcName string, ...) + func RegisterLookup(lookup string, ...) + func ResolveExpressionArgs(inf *ExpressionInfo, arguments []any) []any + func ResolveExpressionField(inf *ExpressionInfo, field string, forUpdate bool) string + type ExprGroup struct + func (g *ExprGroup) And(exprs ...Expression) LogicalExpression + func (g *ExprGroup) Clone() Expression + func (g *ExprGroup) IsNot() bool + func (g *ExprGroup) Not(not bool) LogicalExpression + func (g *ExprGroup) Or(exprs ...Expression) LogicalExpression + func (g *ExprGroup) Resolve(inf *ExpressionInfo) Expression + func (g *ExprGroup) SQL(sb *strings.Builder) []any + type ExprNode struct + func Expr(field string, operation string, value ...any) *ExprNode + func Q(fieldLookup string, value ...any) *ExprNode + func (e *ExprNode) And(exprs ...Expression) LogicalExpression + func (e *ExprNode) Clone() Expression + func (e *ExprNode) IsNot() bool + func (e *ExprNode) Not(not bool) LogicalExpression + func (e *ExprNode) Or(exprs ...Expression) LogicalExpression + func (e *ExprNode) Resolve(inf *ExpressionInfo) Expression + func (e *ExprNode) SQL(sb *strings.Builder) []any + type Expression interface + Clone func() Expression + Resolve func(inf *ExpressionInfo) Expression + SQL func(sb *strings.Builder) []any + func And(exprs ...Expression) Expression + func Or(exprs ...Expression) Expression + func Raw(statement string, value ...any) Expression + type ExpressionInfo struct + AliasGen *alias.Generator + Driver driver.Driver + Model attrs.Definer + Quote string + type Func struct + func FuncAvg(expr ...any) *Func + func FuncCoalesce(expr ...any) *Func + func FuncConcat(expr ...any) *Func + func FuncCount(expr ...any) *Func + func FuncLength(expr any) *Func + func FuncLower(expr any) *Func + func FuncMax(expr ...any) *Func + func FuncMin(expr ...any) *Func + func FuncNow() *Func + func FuncSubstr(expr any, start, length any) *Func + func FuncSum(expr ...any) *Func + func FuncUpper(expr any) *Func + func (e *Func) Clone() Expression + func (e *Func) FieldName() string + func (e *Func) Resolve(inf *ExpressionInfo) Expression + func (e *Func) SQL(sb *strings.Builder) []any + type LogicalExpression interface + And func(...Expression) LogicalExpression + IsNot func() bool + Not func(b bool) LogicalExpression + Or func(...Expression) LogicalExpression + func Express(key interface{}, vals ...interface{}) []LogicalExpression + type LogicalOp string + const OpAnd + const OpOr + type NamedExpression interface + FieldName func() string + func F(statement string, value ...any) NamedExpression + func NamedF(fieldName, stmt string, value ...any) NamedExpression + func U(statement string, value ...any) NamedExpression + type RawExpr = RawNamedExpression + type RawNamedExpression struct + Field string + Fields []string + Params []any + Statement string + func (e *RawNamedExpression) Clone() Expression + func (e *RawNamedExpression) FieldName() string + func (e *RawNamedExpression) Resolve(inf *ExpressionInfo) Expression + func (e *RawNamedExpression) SQL(sb *strings.Builder) []any