Versions in this module Expand all Collapse all v1 v1.1.2 Jul 4, 2021 Changes in this version + func SelectDistinctOn(distinctFields ...Field) func(...Field) SelectQuery + type ArrayField struct + func Array(slice interface{}) ArrayField + func NewArrayField(name string, table Table) ArrayField + func (f ArrayField) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (f ArrayField) As(alias string) ArrayField + func (f ArrayField) Asc() ArrayField + func (f ArrayField) Concat(field ArrayField) Field + func (f ArrayField) ContainedBy(field ArrayField) Predicate + func (f ArrayField) Contains(field ArrayField) Predicate + func (f ArrayField) Desc() ArrayField + func (f ArrayField) Eq(field ArrayField) Predicate + func (f ArrayField) Ge(field ArrayField) Predicate + func (f ArrayField) GetAlias() string + func (f ArrayField) GetName() string + func (f ArrayField) Gt(field ArrayField) Predicate + func (f ArrayField) IsNotNull() Predicate + func (f ArrayField) IsNull() Predicate + func (f ArrayField) Le(field ArrayField) Predicate + func (f ArrayField) Lt(field ArrayField) Predicate + func (f ArrayField) Ne(field ArrayField) Predicate + func (f ArrayField) NullsFirst() ArrayField + func (f ArrayField) NullsLast() ArrayField + func (f ArrayField) Overlaps(field ArrayField) Predicate + func (f ArrayField) Set(value ArrayField) FieldAssignment + func (f ArrayField) String() string + type Assignment interface + AppendSQLExclude func(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + AssertAssignment func() + type Assignments []Assignment + func (assignments Assignments) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + type BaseQuery struct + CTEs []CTE + DB DB + Log Logger + LogFlag LogFlag + func With(CTEs ...CTE) BaseQuery + func WithDB(db DB) BaseQuery + func WithDefaultLog(flag LogFlag) BaseQuery + func (q BaseQuery) DeleteFrom(table BaseTable) DeleteQuery + func (q BaseQuery) From(table Table) SelectQuery + func (q BaseQuery) InsertInto(table BaseTable) InsertQuery + func (q BaseQuery) Select(fields ...Field) SelectQuery + func (q BaseQuery) SelectAll() SelectQuery + func (q BaseQuery) SelectCount() SelectQuery + func (q BaseQuery) SelectDistinct(fields ...Field) SelectQuery + func (q BaseQuery) SelectDistinctOn(distinctFields ...Field) func(...Field) SelectQuery + func (q BaseQuery) SelectOne() SelectQuery + func (q BaseQuery) SelectRowx(mapper func(*Row)) SelectQuery + func (q BaseQuery) Selectx(mapper func(*Row), accumulator func()) SelectQuery + func (q BaseQuery) Union(queries ...Query) VariadicQuery + func (q BaseQuery) UnionAll(queries ...Query) VariadicQuery + func (q BaseQuery) Update(table BaseTable) UpdateQuery + func (q BaseQuery) With(CTEs ...CTE) BaseQuery + func (q BaseQuery) WithDB(db DB) BaseQuery + func (q BaseQuery) WithDefaultLog(flag LogFlag) BaseQuery + type BaseTable interface + AssertBaseTable func() + type BinaryField struct + func Bytes(b []byte) BinaryField + func NewBinaryField(name string, table Table) BinaryField + func (f BinaryField) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (f BinaryField) GetAlias() string + func (f BinaryField) GetName() string + func (f BinaryField) IsNotNull() Predicate + func (f BinaryField) IsNull() Predicate + func (f BinaryField) Set(v interface{}) FieldAssignment + func (f BinaryField) SetBytes(b []byte) FieldAssignment + type BooleanField struct + func Bool(b bool) BooleanField + func NewBooleanField(name string, table Table) BooleanField + func (f BooleanField) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (f BooleanField) As(alias string) BooleanField + func (f BooleanField) Asc() BooleanField + func (f BooleanField) Desc() BooleanField + func (f BooleanField) Eq(field BooleanField) Predicate + func (f BooleanField) GetAlias() string + func (f BooleanField) GetName() string + func (f BooleanField) IsNotNull() Predicate + func (f BooleanField) IsNull() Predicate + func (f BooleanField) Ne(field BooleanField) Predicate + func (f BooleanField) Not() Predicate + func (f BooleanField) NullsFirst() BooleanField + func (f BooleanField) NullsLast() BooleanField + func (f BooleanField) Set(val interface{}) FieldAssignment + func (f BooleanField) SetBool(val bool) FieldAssignment + func (f BooleanField) String() string + type CTE map[string]CustomField + func RecursiveCTE(name string, columns ...string) CTE + func (cte *CTE) Initial(query Query) IntermediateCTE + func (cte CTE) AppendSQL(buf *strings.Builder, args *[]interface{}, params map[string]int) + func (cte CTE) As(alias string) CTE + func (cte CTE) GetAlias() string + func (cte CTE) GetColumns() []string + func (cte CTE) GetName() string + func (cte CTE) GetQuery() Query + func (cte CTE) IsRecursive() bool + type Column struct + func (col *Column) Set(field Field, value interface{}) + func (col *Column) SetBool(field BooleanField, value bool) + func (col *Column) SetFloat64(field NumberField, value float64) + func (col *Column) SetInt(field NumberField, value int) + func (col *Column) SetInt64(field NumberField, value int64) + func (col *Column) SetString(field StringField, value string) + func (col *Column) SetTime(field TimeField, value time.Time) + func (col *Column) SetUUID(field UUIDField, value uuid.UUID) + type CustomAssignment struct + Format string + Values []interface{} + func (set CustomAssignment) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (set CustomAssignment) AssertAssignment() + type CustomField struct + Alias string + Format string + IsDesc *bool + IsNullsFirst *bool + Values []interface{} + func Excluded(field Field) CustomField + func Fieldf(format string, values ...interface{}) CustomField + func FirstValueOver(field interface{}, window Window) CustomField + func LagOver(field interface{}, offset interface{}, fallback interface{}, window Window) CustomField + func LastValueOver(field interface{}, window Window) CustomField + func LeadOver(field interface{}, offset interface{}, fallback interface{}, window Window) CustomField + func NthValueOver(field interface{}, n int, window Window) CustomField + func (f CustomField) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (f CustomField) As(alias string) CustomField + func (f CustomField) Asc() CustomField + func (f CustomField) Desc() CustomField + func (f CustomField) Eq(v interface{}) Predicate + func (f CustomField) Ge(v interface{}) Predicate + func (f CustomField) GetAlias() string + func (f CustomField) GetName() string + func (f CustomField) Gt(v interface{}) Predicate + func (f CustomField) In(v interface{}) Predicate + func (f CustomField) IsNotNull() Predicate + func (f CustomField) IsNull() Predicate + func (f CustomField) Le(v interface{}) Predicate + func (f CustomField) Lt(v interface{}) Predicate + func (f CustomField) Ne(v interface{}) Predicate + func (f CustomField) NullsFirst() CustomField + func (f CustomField) NullsLast() CustomField + func (f CustomField) String() string + type CustomPredicate struct + Alias string + Format string + Negative bool + Values []interface{} + func Exists(query Query) CustomPredicate + func Predicatef(format string, values ...interface{}) CustomPredicate + func (p CustomPredicate) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (p CustomPredicate) As(alias string) CustomPredicate + func (p CustomPredicate) GetAlias() string + func (p CustomPredicate) GetName() string + func (p CustomPredicate) Not() Predicate + type DB interface + Exec func(query string, args ...interface{}) (sql.Result, error) + ExecContext func(ctx context.Context, query string, args ...interface{}) (sql.Result, error) + Query func(query string, args ...interface{}) (*sql.Rows, error) + QueryContext func(ctx context.Context, query string, args ...interface{}) (*sql.Rows, error) + type DeleteQuery struct + Accumulator func() + CTEs []CTE + DB DB + FromTable BaseTable + JoinTables JoinTables + Log Logger + LogFlag LogFlag + ReturningFields Fields + RowMapper func(*Row) + UsingTable Table + WherePredicate VariadicPredicate + func DeleteFrom(table BaseTable) DeleteQuery + func (q DeleteQuery) AppendSQL(buf *strings.Builder, args *[]interface{}, params map[string]int) + func (q DeleteQuery) CTE(name string, columns ...string) CTE + func (q DeleteQuery) CustomJoin(joinType JoinType, table Table, predicates ...Predicate) DeleteQuery + func (q DeleteQuery) DeleteFrom(table BaseTable) DeleteQuery + func (q DeleteQuery) Exec(db DB, flag ExecFlag) (rowsAffected int64, err error) + func (q DeleteQuery) ExecContext(ctx context.Context, db DB, flag ExecFlag) (rowsAffected int64, err error) + func (q DeleteQuery) Fetch(db DB) (err error) + func (q DeleteQuery) FetchContext(ctx context.Context, db DB) (err error) + func (q DeleteQuery) FullJoin(table Table, predicate Predicate, predicates ...Predicate) DeleteQuery + func (q DeleteQuery) Join(table Table, predicate Predicate, predicates ...Predicate) DeleteQuery + func (q DeleteQuery) LeftJoin(table Table, predicate Predicate, predicates ...Predicate) DeleteQuery + func (q DeleteQuery) NestThis() Query + func (q DeleteQuery) Returning(fields ...Field) DeleteQuery + func (q DeleteQuery) ReturningOne() DeleteQuery + func (q DeleteQuery) ReturningRowx(mapper func(*Row)) DeleteQuery + func (q DeleteQuery) Returningx(mapper func(*Row), accumulator func()) DeleteQuery + func (q DeleteQuery) RightJoin(table Table, predicate Predicate, predicates ...Predicate) DeleteQuery + func (q DeleteQuery) Subquery(alias string) Subquery + func (q DeleteQuery) ToSQL() (string, []interface{}) + func (q DeleteQuery) Using(table Table) DeleteQuery + func (q DeleteQuery) Where(predicates ...Predicate) DeleteQuery + func (q DeleteQuery) With(ctes ...CTE) DeleteQuery + type EnumField = StringField + func NewEnumField(name string, table Table) EnumField + type ExecFlag int + const ErowsAffected + type ExitCode int + const ExitPeacefully + func (e ExitCode) Error() string + type Field interface + AppendSQLExclude func(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + GetAlias func() string + GetName func() string + type FieldAssignment struct + Field Field + Value interface{} + func (set FieldAssignment) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (set FieldAssignment) AssertAssignment() + type FieldLiteral string + func (f FieldLiteral) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (f FieldLiteral) GetAlias() string + func (f FieldLiteral) GetName() string + type Fields []Field + func (fs Fields) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (fs Fields) AppendSQLExcludeWithAlias(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + type FunctionInfo struct + Alias string + Arguments []interface{} + Name string + Schema string + func Functionf(name string, args ...interface{}) *FunctionInfo + func (f *FunctionInfo) AppendSQL(buf *strings.Builder, args *[]interface{}, params map[string]int) + func (f *FunctionInfo) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (f *FunctionInfo) GetAlias() string + func (f *FunctionInfo) GetName() string + type InsertConflict struct + func (c InsertConflict) DoNothing() InsertQuery + func (c InsertConflict) DoUpdateSet(assignments ...Assignment) InsertQuery + func (c InsertConflict) Where(predicates ...Predicate) InsertConflict + type InsertQuery struct + Accumulator func() + CTEs []CTE + ColumnMapper func(*Column) + ConflictConstraint string + ConflictFields Fields + ConflictPredicate VariadicPredicate + DB DB + HandleConflict bool + InsertColumns Fields + IntoTable BaseTable + Log Logger + LogFlag LogFlag + Resolution Assignments + ResolutionPredicate VariadicPredicate + ReturningFields Fields + RowMapper func(*Row) + RowValues RowValues + SelectQuery *SelectQuery + func InsertInto(table BaseTable) InsertQuery + func (q InsertQuery) AppendSQL(buf *strings.Builder, args *[]interface{}, params map[string]int) + func (q InsertQuery) CTE(name string, columns ...string) CTE + func (q InsertQuery) Columns(fields ...Field) InsertQuery + func (q InsertQuery) Exec(db DB, flag ExecFlag) (rowsAffected int64, err error) + func (q InsertQuery) ExecContext(ctx context.Context, db DB, flag ExecFlag) (rowsAffected int64, err error) + func (q InsertQuery) Fetch(db DB) (err error) + func (q InsertQuery) FetchContext(ctx context.Context, db DB) (err error) + func (q InsertQuery) InsertInto(table BaseTable) InsertQuery + func (q InsertQuery) NestThis() Query + func (q InsertQuery) OnConflict(fields ...Field) InsertConflict + func (q InsertQuery) OnConflictOnConstraint(name string) InsertConflict + func (q InsertQuery) Returning(fields ...Field) InsertQuery + func (q InsertQuery) ReturningOne() InsertQuery + func (q InsertQuery) ReturningRowx(mapper func(*Row)) InsertQuery + func (q InsertQuery) Returningx(mapper func(*Row), accumulator func()) InsertQuery + func (q InsertQuery) Select(selectQuery SelectQuery) InsertQuery + func (q InsertQuery) Subquery(alias string) Subquery + func (q InsertQuery) ToSQL() (query string, args []interface{}) + func (q InsertQuery) Values(values ...interface{}) InsertQuery + func (q InsertQuery) Valuesx(mapper func(*Column)) InsertQuery + func (q InsertQuery) Where(predicates ...Predicate) InsertQuery + func (q InsertQuery) With(ctes ...CTE) InsertQuery + type IntermediateCTE map[string]CustomField + func (cte IntermediateCTE) Union(queries ...Query) CTE + func (cte IntermediateCTE) UnionAll(queries ...Query) CTE + type JSONField struct + func JSON(val interface{}) (JSONField, error) + func JSONValue(val driver.Valuer) JSONField + func MustJSON(val interface{}) JSONField + func NewJSONField(name string, table Table) JSONField + func (f JSONField) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (f JSONField) As(alias string) JSONField + func (f JSONField) Asc() JSONField + func (f JSONField) Desc() JSONField + func (f JSONField) GetAlias() string + func (f JSONField) GetName() string + func (f JSONField) IsNotNull() Predicate + func (f JSONField) IsNull() Predicate + func (f JSONField) NullsFirst() JSONField + func (f JSONField) NullsLast() JSONField + func (f JSONField) Set(value interface{}) FieldAssignment + func (f JSONField) SetJSON(value interface{}) FieldAssignment + func (f JSONField) SetValue(value driver.Valuer) FieldAssignment + func (f JSONField) String() string + type JoinTable struct + JoinType JoinType + OnPredicates VariadicPredicate + Table Table + func CustomJoin(joinType JoinType, table Table, predicates ...Predicate) JoinTable + func FullJoin(table Table, predicates ...Predicate) JoinTable + func Join(table Table, predicates ...Predicate) JoinTable + func LeftJoin(table Table, predicates ...Predicate) JoinTable + func RightJoin(table Table, predicates ...Predicate) JoinTable + func (join JoinTable) AppendSQL(buf *strings.Builder, args *[]interface{}, params map[string]int) + type JoinTables []JoinTable + func (joins JoinTables) AppendSQL(buf *strings.Builder, args *[]interface{}, params map[string]int) + type JoinType string + const JoinTypeFull + const JoinTypeInner + const JoinTypeLeft + const JoinTypeRight + type LogFlag int + const Linterpolate + const Lresults + const Lstats + const Lverbose + type Logger interface + Output func(calldepth int, s string) error + type NumberField struct + func Avg(field interface{}) NumberField + func AvgOver(field interface{}, window Window) NumberField + func Count() NumberField + func CountOver(window Window) NumberField + func CumeDistOver(window Window) NumberField + func DenseRankOver(window Window) NumberField + func Float64(num float64) NumberField + func Int(num int) NumberField + func Int64(num int64) NumberField + func Max(field interface{}) NumberField + func MaxOver(field interface{}, window Window) NumberField + func Min(field interface{}) NumberField + func MinOver(field interface{}, window Window) NumberField + func NewNumberField(name string, table Table) NumberField + func NtileOver(n int, window Window) NumberField + func NumberFieldf(format string, values ...interface{}) NumberField + func PercentRankOver(window Window) NumberField + func RankOver(window Window) NumberField + func RowNumberOver(window Window) NumberField + func Sum(field interface{}) NumberField + func SumOver(field interface{}, window Window) NumberField + func (f NumberField) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (f NumberField) As(alias string) NumberField + func (f NumberField) Asc() NumberField + func (f NumberField) Desc() NumberField + func (f NumberField) Eq(field NumberField) Predicate + func (f NumberField) EqFloat64(num float64) Predicate + func (f NumberField) EqInt(num int) Predicate + func (f NumberField) Ge(field NumberField) Predicate + func (f NumberField) GeFloat64(num float64) Predicate + func (f NumberField) GeInt(num int) Predicate + func (f NumberField) GetAlias() string + func (f NumberField) GetName() string + func (f NumberField) Gt(field NumberField) Predicate + func (f NumberField) GtFloat64(num float64) Predicate + func (f NumberField) GtInt(num int) Predicate + func (f NumberField) In(v interface{}) Predicate + func (f NumberField) IsNotNull() Predicate + func (f NumberField) IsNull() Predicate + func (f NumberField) Le(field NumberField) Predicate + func (f NumberField) LeFloat64(num float64) Predicate + func (f NumberField) LeInt(num int) Predicate + func (f NumberField) Lt(field NumberField) Predicate + func (f NumberField) LtFloat64(num float64) Predicate + func (f NumberField) LtInt(num int) Predicate + func (f NumberField) Ne(field NumberField) Predicate + func (f NumberField) NeFloat64(num float64) Predicate + func (f NumberField) NeInt(num int) Predicate + func (f NumberField) NullsFirst() NumberField + func (f NumberField) NullsLast() NumberField + func (f NumberField) Set(val interface{}) FieldAssignment + func (f NumberField) SetFloat64(num float64) FieldAssignment + func (f NumberField) SetInt(num int) FieldAssignment + func (f NumberField) SetInt64(num int64) FieldAssignment + func (f NumberField) String() string + type Predicate interface + Not func() Predicate + func Eq(f1, f2 interface{}) Predicate + func Ge(f1, f2 interface{}) Predicate + func Gt(f1, f2 interface{}) Predicate + func Le(f1, f2 interface{}) Predicate + func Lt(f1, f2 interface{}) Predicate + func Ne(f1, f2 interface{}) Predicate + func Not(predicate Predicate) Predicate + type PredicateCase struct + Condition Predicate + Result interface{} + type PredicateCases struct + Alias string + Cases []PredicateCase + Fallback interface{} + func CaseWhen(predicate Predicate, result interface{}) PredicateCases + func (f PredicateCases) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (f PredicateCases) As(alias string) PredicateCases + func (f PredicateCases) Else(fallback interface{}) PredicateCases + func (f PredicateCases) GetAlias() string + func (f PredicateCases) GetName() string + func (f PredicateCases) When(predicate Predicate, result interface{}) PredicateCases + type Query interface + AppendSQL func(buf *strings.Builder, args *[]interface{}, params map[string]int) + NestThis func() Query + ToSQL func() (string, []interface{}) + type Row struct + func (r *Row) Bool(predicate Predicate) bool + func (r *Row) BoolValid(predicate Predicate) bool + func (r *Row) Float64(field NumberField) float64 + func (r *Row) Float64Valid(field NumberField) bool + func (r *Row) Int(field NumberField) int + func (r *Row) Int64(field NumberField) int64 + func (r *Row) Int64Valid(field NumberField) bool + func (r *Row) IntValid(field NumberField) bool + func (r *Row) NullBool(predicate Predicate) sql.NullBool + func (r *Row) NullFloat64(field NumberField) sql.NullFloat64 + func (r *Row) NullInt64(field NumberField) sql.NullInt64 + func (r *Row) NullString(field StringField) sql.NullString + func (r *Row) NullTime(field TimeField) sql.NullTime + func (r *Row) ScanArray(slice interface{}, field Field) + func (r *Row) ScanInto(dest interface{}, field Field) + func (r *Row) String(field StringField) string + func (r *Row) StringValid(field StringField) bool + func (r *Row) Time(field TimeField) time.Time + func (r *Row) TimeValid(field TimeField) bool + func (r *Row) UUID(field UUIDField) uuid.UUID + type RowValue []interface + func (r RowValue) AppendSQL(buf *strings.Builder, args *[]interface{}, params map[string]int) + func (r RowValue) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (r RowValue) GetAlias() string + func (r RowValue) GetName() string + func (r RowValue) In(v interface{}) CustomPredicate + func (r RowValue) Set(v interface{}) CustomAssignment + type RowValues []RowValue + func (rs RowValues) AppendSQL(buf *strings.Builder, args *[]interface{}, params map[string]int) + type SelectQuery struct + Accumulator func() + CTEs []CTE + DB DB + DistinctOn Fields + FromTable Table + GroupByFields Fields + HavingPredicate VariadicPredicate + JoinTables JoinTables + LimitValue *int64 + Log Logger + LogFlag LogFlag + OffsetValue *int64 + OrderByFields Fields + RowMapper func(*Row) + SelectFields Fields + SelectType SelectType + WherePredicate VariadicPredicate + Windows Windows + func From(table Table) SelectQuery + func Select(fields ...Field) SelectQuery + func SelectDistinct(fields ...Field) SelectQuery + func SelectOne() SelectQuery + func SelectRowx(mapper func(*Row)) SelectQuery + func Selectx(mapper func(*Row), accumulator func()) SelectQuery + func (q SelectQuery) AppendSQL(buf *strings.Builder, args *[]interface{}, params map[string]int) + func (q SelectQuery) CTE(name string, columns ...string) CTE + func (q SelectQuery) CustomJoin(joinType JoinType, table Table, predicates ...Predicate) SelectQuery + func (q SelectQuery) Exec(db DB, flag ExecFlag) (rowsAffected int64, err error) + func (q SelectQuery) ExecContext(ctx context.Context, db DB, flag ExecFlag) (rowsAffected int64, err error) + func (q SelectQuery) Fetch(db DB) (err error) + func (q SelectQuery) FetchContext(ctx context.Context, db DB) (err error) + func (q SelectQuery) From(table Table) SelectQuery + func (q SelectQuery) FullJoin(table Table, predicate Predicate, predicates ...Predicate) SelectQuery + func (q SelectQuery) GroupBy(fields ...Field) SelectQuery + func (q SelectQuery) Having(predicates ...Predicate) SelectQuery + func (q SelectQuery) Join(table Table, predicate Predicate, predicates ...Predicate) SelectQuery + func (q SelectQuery) LeftJoin(table Table, predicate Predicate, predicates ...Predicate) SelectQuery + func (q SelectQuery) Limit(limit int) SelectQuery + func (q SelectQuery) NestThis() Query + func (q SelectQuery) Offset(offset int) SelectQuery + func (q SelectQuery) OrderBy(fields ...Field) SelectQuery + func (q SelectQuery) RightJoin(table Table, predicate Predicate, predicates ...Predicate) SelectQuery + func (q SelectQuery) Select(fields ...Field) SelectQuery + func (q SelectQuery) SelectAll() SelectQuery + func (q SelectQuery) SelectCount() SelectQuery + func (q SelectQuery) SelectDistinct(fields ...Field) SelectQuery + func (q SelectQuery) SelectDistinctOn(distinctFields ...Field) func(...Field) SelectQuery + func (q SelectQuery) SelectOne() SelectQuery + func (q SelectQuery) SelectRowx(mapper func(*Row)) SelectQuery + func (q SelectQuery) Selectx(mapper func(*Row), accumulator func()) SelectQuery + func (q SelectQuery) Subquery(alias string) Subquery + func (q SelectQuery) ToSQL() (string, []interface{}) + func (q SelectQuery) Where(predicates ...Predicate) SelectQuery + func (q SelectQuery) Window(windows ...Window) SelectQuery + func (q SelectQuery) With(ctes ...CTE) SelectQuery + type SelectType string + const SelectTypeDefault + const SelectTypeDistinct + const SelectTypeDistinctOn + type SimpleCase struct + Result interface{} + Value interface{} + type SimpleCases struct + Alias string + Cases []SimpleCase + Expression interface{} + Fallback interface{} + func Case(field Field) SimpleCases + func (f SimpleCases) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (f SimpleCases) As(alias string) SimpleCases + func (f SimpleCases) Else(field Field) SimpleCases + func (f SimpleCases) GetAlias() string + func (f SimpleCases) GetName() string + func (f SimpleCases) When(field Field, result Field) SimpleCases + type StringField struct + func NewStringField(name string, table Table) StringField + func String(s string) StringField + func (f StringField) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (f StringField) As(alias string) StringField + func (f StringField) Asc() StringField + func (f StringField) Desc() StringField + func (f StringField) Eq(field StringField) Predicate + func (f StringField) EqString(s string) Predicate + func (f StringField) Ge(field StringField) Predicate + func (f StringField) GeString(s string) Predicate + func (f StringField) GetAlias() string + func (f StringField) GetName() string + func (f StringField) Gt(field StringField) Predicate + func (f StringField) GtString(s string) Predicate + func (f StringField) ILikeString(s string) Predicate + func (f StringField) In(v interface{}) Predicate + func (f StringField) IsNotNull() Predicate + func (f StringField) IsNull() Predicate + func (f StringField) Le(field StringField) Predicate + func (f StringField) LeString(s string) Predicate + func (f StringField) LikeString(s string) Predicate + func (f StringField) Lt(field StringField) Predicate + func (f StringField) LtString(s string) Predicate + func (f StringField) Ne(field StringField) Predicate + func (f StringField) NeString(s string) Predicate + func (f StringField) NotILikeString(s string) Predicate + func (f StringField) NotLikeString(s string) Predicate + func (f StringField) NullsFirst() StringField + func (f StringField) NullsLast() StringField + func (f StringField) Set(value interface{}) FieldAssignment + func (f StringField) SetString(s string) FieldAssignment + func (f StringField) String() string + type Subquery map[string]CustomField + func (subq Subquery) AppendSQL(buf *strings.Builder, args *[]interface{}, params map[string]int) + func (subq Subquery) GetAlias() string + func (subq Subquery) GetName() string + func (subq Subquery) GetQuery() Query + func (subq Subquery) NestThis() Query + func (subq Subquery) ToSQL() (string, []interface{}) + type Table interface + AppendSQL func(buf *strings.Builder, args *[]interface{}, params map[string]int) + GetAlias func() string + GetName func() string + type TableInfo struct + Alias string + Name string + Schema string + func (tbl *TableInfo) AppendSQL(buf *strings.Builder, args *[]interface{}, params map[string]int) + func (tbl *TableInfo) AssertBaseTable() + func (tbl *TableInfo) GetAlias() string + func (tbl *TableInfo) GetName() string + type TimeField struct + func NewTimeField(name string, table Table) TimeField + func Time(t time.Time) TimeField + func (f TimeField) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (f TimeField) As(alias string) TimeField + func (f TimeField) Asc() TimeField + func (f TimeField) Between(start, end TimeField) Predicate + func (f TimeField) BetweenSymmetricTime(start, end time.Time) Predicate + func (f TimeField) BetweenTime(start, end time.Time) Predicate + func (f TimeField) Desc() TimeField + func (f TimeField) Eq(field TimeField) Predicate + func (f TimeField) EqTime(t time.Time) Predicate + func (f TimeField) Ge(field TimeField) Predicate + func (f TimeField) GeTime(t time.Time) Predicate + func (f TimeField) GetAlias() string + func (f TimeField) GetName() string + func (f TimeField) Gt(field TimeField) Predicate + func (f TimeField) GtTime(t time.Time) Predicate + func (f TimeField) IsNotNull() Predicate + func (f TimeField) IsNull() Predicate + func (f TimeField) Le(field TimeField) Predicate + func (f TimeField) LeTime(t time.Time) Predicate + func (f TimeField) Lt(field TimeField) Predicate + func (f TimeField) LtTime(t time.Time) Predicate + func (f TimeField) Ne(field TimeField) Predicate + func (f TimeField) NeTime(t time.Time) Predicate + func (f TimeField) NotBetween(start, end TimeField) Predicate + func (f TimeField) NotBetweenSymmetricTime(start, end time.Time) Predicate + func (f TimeField) NotBetweenTime(start, end time.Time) Predicate + func (f TimeField) NullsFirst() TimeField + func (f TimeField) NullsLast() TimeField + func (f TimeField) Set(value interface{}) FieldAssignment + func (f TimeField) SetTime(value time.Time) FieldAssignment + func (f TimeField) String() string + type UUIDField struct + func NewUUIDField(name string, table Table) UUIDField + func UUID(u uuid.UUID) UUIDField + func (f UUIDField) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (f UUIDField) Eq(field UUIDField) Predicate + func (f UUIDField) EqUUID(u uuid.UUID) Predicate + func (f UUIDField) GetAlias() string + func (f UUIDField) GetName() string + func (f UUIDField) In(v interface{}) Predicate + func (f UUIDField) IsNotNull() Predicate + func (f UUIDField) IsNull() Predicate + func (f UUIDField) Ne(field UUIDField) Predicate + func (f UUIDField) NeUUID(u uuid.UUID) Predicate + func (f UUIDField) Set(value interface{}) FieldAssignment + func (f UUIDField) SetUUID(u uuid.UUID) FieldAssignment + func (f UUIDField) String() string + type UpdateQuery struct + Accumulator func() + Assignments Assignments + CTEs []CTE + ColumnMapper func(*Column) + DB DB + FromTable Table + JoinTables JoinTables + Log Logger + LogFlag LogFlag + ReturningFields Fields + RowMapper func(*Row) + UpdateTable BaseTable + WherePredicate VariadicPredicate + func Update(table BaseTable) UpdateQuery + func (q UpdateQuery) AppendSQL(buf *strings.Builder, args *[]interface{}, params map[string]int) + func (q UpdateQuery) CTE(name string, columns ...string) CTE + func (q UpdateQuery) CustomJoin(joinType JoinType, table Table, predicates ...Predicate) UpdateQuery + func (q UpdateQuery) Exec(db DB, flag ExecFlag) (rowsAffected int64, err error) + func (q UpdateQuery) ExecContext(ctx context.Context, db DB, flag ExecFlag) (rowsAffected int64, err error) + func (q UpdateQuery) Fetch(db DB) (err error) + func (q UpdateQuery) FetchContext(ctx context.Context, db DB) (err error) + func (q UpdateQuery) From(table Table) UpdateQuery + func (q UpdateQuery) FullJoin(table Table, predicate Predicate, predicates ...Predicate) UpdateQuery + func (q UpdateQuery) Join(table Table, predicate Predicate, predicates ...Predicate) UpdateQuery + func (q UpdateQuery) LeftJoin(table Table, predicate Predicate, predicates ...Predicate) UpdateQuery + func (q UpdateQuery) NestThis() Query + func (q UpdateQuery) Returning(fields ...Field) UpdateQuery + func (q UpdateQuery) ReturningOne() UpdateQuery + func (q UpdateQuery) ReturningRowx(mapper func(*Row)) UpdateQuery + func (q UpdateQuery) Returningx(mapper func(*Row), accumulator func()) UpdateQuery + func (q UpdateQuery) RightJoin(table Table, predicate Predicate, predicates ...Predicate) UpdateQuery + func (q UpdateQuery) Set(assignments ...Assignment) UpdateQuery + func (q UpdateQuery) Setx(mapper func(*Column)) UpdateQuery + func (q UpdateQuery) Subquery(alias string) Subquery + func (q UpdateQuery) ToSQL() (query string, args []interface{}) + func (q UpdateQuery) Update(table BaseTable) UpdateQuery + func (q UpdateQuery) Where(predicates ...Predicate) UpdateQuery + func (q UpdateQuery) With(ctes ...CTE) UpdateQuery + type VariadicPredicate struct + Alias string + Negative bool + Operator VariadicPredicateOperator + Predicates []Predicate + func And(predicates ...Predicate) VariadicPredicate + func Or(predicates ...Predicate) VariadicPredicate + func (p VariadicPredicate) AppendSQLExclude(buf *strings.Builder, args *[]interface{}, params map[string]int, ...) + func (p VariadicPredicate) GetAlias() string + func (p VariadicPredicate) GetName() string + func (p VariadicPredicate) Not() Predicate + type VariadicPredicateOperator string + const PredicateAnd + const PredicateOr + type VariadicQuery struct + Accumulator func() + DB DB + Log Logger + LogFlag LogFlag + Mapper func(*Row) + Operator VariadicQueryOperator + Queries []Query + func Except(queries ...Query) VariadicQuery + func ExceptAll(queries ...Query) VariadicQuery + func Intersect(queries ...Query) VariadicQuery + func IntersectAll(queries ...Query) VariadicQuery + func Union(queries ...Query) VariadicQuery + func UnionAll(queries ...Query) VariadicQuery + func (vq VariadicQuery) AppendSQL(buf *strings.Builder, args *[]interface{}, params map[string]int) + func (vq VariadicQuery) CTE(name string, columns ...string) CTE + func (vq VariadicQuery) NestThis() Query + func (vq VariadicQuery) Subquery(name string) Subquery + func (vq VariadicQuery) ToSQL() (string, []interface{}) + type VariadicQueryOperator string + const QueryExcept + const QueryExceptAll + const QueryIntersect + const QueryIntersectAll + const QueryUnion + const QueryUnionAll + type Window struct + FrameDefinition string + OrderByFields Fields + PartitionByFields Fields + WindowName string + func OrderBy(fields ...Field) Window + func PartitionBy(fields ...Field) Window + func (w Window) AppendSQL(buf *strings.Builder, args *[]interface{}, params map[string]int) + func (w Window) As(name string) Window + func (w Window) Frame(frameDefinition string) Window + func (w Window) Name() Window + func (w Window) OrderBy(fields ...Field) Window + func (w Window) PartitionBy(fields ...Field) Window + type Windows []Window + func (ws Windows) AppendSQL(buf *strings.Builder, args *[]interface{}, params map[string]int)