dml

package
v0.2.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 26, 2026 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BaseQuery

type BaseQuery[T types.TableAlias, C types.ColumnAlias] struct {
	Ta          T
	UsingFields []C
	AllFields   []C
}

func (*BaseQuery[T, C]) ScanAbleFields

func (q *BaseQuery[T, C]) ScanAbleFields() []string

type DeleteQuery

type DeleteQuery[T types.TableAlias, C types.ColumnAlias] struct {
	BaseQuery[T, C]
	// contains filtered or unexported fields
}

func (*DeleteQuery[T, C]) AddToBuilder

func (q *DeleteQuery[T, C]) AddToBuilder(sb *strings.Builder, ta string, paramIndex *int, args *[]any)

func (*DeleteQuery[T, C]) Build

func (q *DeleteQuery[T, C]) Build() (string, []any)

func (*DeleteQuery[T, C]) Returning

func (q *DeleteQuery[T, C]) Returning(fields ...C) *DeleteQuery[T, C]

func (*DeleteQuery[T, C]) ReturningAll

func (q *DeleteQuery[T, C]) ReturningAll() *DeleteQuery[T, C]

func (*DeleteQuery[T, C]) ScanAbleFields

func (q *DeleteQuery[T, C]) ScanAbleFields() []string

func (*DeleteQuery[T, C]) Where

func (q *DeleteQuery[T, C]) Where(clause ...clause.Clause[C]) *DeleteQuery[T, C]

type InsertQuery

type InsertQuery[T types.TableAlias, C types.ColumnAlias] struct {
	BaseQuery[T, C]
	// contains filtered or unexported fields
}

func (*InsertQuery[T, C]) AddToBuilder

func (q *InsertQuery[T, C]) AddToBuilder(buf *strings.Builder, ta string, paramIndex *int, args *[]any)

func (*InsertQuery[T, C]) Build

func (q *InsertQuery[T, C]) Build() (string, []any)

func (*InsertQuery[T, C]) Columns

func (q *InsertQuery[T, C]) Columns(columns ...C) *InsertQuery[T, C]

func (*InsertQuery[T, C]) DoNothing

func (q *InsertQuery[T, C]) DoNothing() *InsertQuery[T, C]

func (*InsertQuery[T, C]) DoUpdate

func (q *InsertQuery[T, C]) DoUpdate(assign ...C) *InsertQuery[T, C]

func (*InsertQuery[T, C]) From

func (q *InsertQuery[T, C]) From(setters ...set.ValueSetter[C]) *InsertQuery[T, C]

func (*InsertQuery[T, C]) OnConflict

func (q *InsertQuery[T, C]) OnConflict(columns ...C) *InsertQuery[T, C]

func (*InsertQuery[T, C]) Returning

func (q *InsertQuery[T, C]) Returning(fields ...C) *InsertQuery[T, C]

func (*InsertQuery[T, C]) ReturningAll

func (q *InsertQuery[T, C]) ReturningAll() *InsertQuery[T, C]

func (*InsertQuery[T, C]) ScanAbleFields

func (q *InsertQuery[T, C]) ScanAbleFields() []string

func (*InsertQuery[T, C]) Values

func (q *InsertQuery[T, C]) Values(values ...any) *InsertQuery[T, C]

type JoinClause

type JoinClause[C types.ColumnAlias] struct {
	JoinType  JoinType
	Table     string
	Alias     string
	OnClauses []clause.Clause[C]
}

type JoinType

type JoinType string
const (
	InnerJoinType JoinType = "INNER JOIN"
	LeftJoinType  JoinType = "LEFT JOIN"
	RightJoinType JoinType = "RIGHT JOIN"
	FullJoinType  JoinType = "FULL JOIN"
)

type SelectQuery

type SelectQuery[T types.TableAlias, C types.ColumnAlias] struct {
	BaseQuery[T, C]
	// contains filtered or unexported fields
}

func (*SelectQuery[T, C]) AddToBuilder

func (q *SelectQuery[T, C]) AddToBuilder(buf *strings.Builder, ta string, paramIndex *int, args *[]any)

func (*SelectQuery[T, C]) Build

func (q *SelectQuery[T, C]) Build() (string, []any)

func (*SelectQuery[T, C]) Distinct

func (q *SelectQuery[T, C]) Distinct() *SelectQuery[T, C]

func (*SelectQuery[T, C]) Fields

func (q *SelectQuery[T, C]) Fields(
	fields ...C,
) *SelectQuery[T, C]

func (*SelectQuery[T, C]) ForUpdate

func (q *SelectQuery[T, C]) ForUpdate() *SelectQuery[T, C]

func (*SelectQuery[T, C]) FullJoin

func (q *SelectQuery[T, C]) FullJoin(table string, alias string, onClauses ...clause.Clause[C]) *SelectQuery[T, C]

FullJoin adds a FULL JOIN clause

func (*SelectQuery[T, C]) GroupBy

func (q *SelectQuery[T, C]) GroupBy(fields ...C) *SelectQuery[T, C]

func (*SelectQuery[T, C]) Having

func (q *SelectQuery[T, C]) Having(clause ...clause.Clause[C]) *SelectQuery[T, C]

func (*SelectQuery[T, C]) InnerJoin

func (q *SelectQuery[T, C]) InnerJoin(table string, alias string, onClauses ...clause.Clause[C]) *SelectQuery[T, C]

InnerJoin adds an INNER JOIN clause

func (*SelectQuery[T, C]) Join

func (q *SelectQuery[T, C]) Join(
	joinType JoinType,
	table string,
	alias string,
	onClauses ...clause.Clause[C],
) *SelectQuery[T, C]

Join adds a generic JOIN clause

func (*SelectQuery[T, C]) LeftJoin

func (q *SelectQuery[T, C]) LeftJoin(table string, alias string, onClauses ...clause.Clause[C]) *SelectQuery[T, C]

LeftJoin adds a LEFT JOIN clause

func (*SelectQuery[T, C]) Limit

func (q *SelectQuery[T, C]) Limit(limit int) *SelectQuery[T, C]

func (*SelectQuery[T, C]) Offset

func (q *SelectQuery[T, C]) Offset(offset int) *SelectQuery[T, C]

func (*SelectQuery[T, C]) OrderByASC

func (q *SelectQuery[T, C]) OrderByASC(fields ...C) *SelectQuery[T, C]

func (*SelectQuery[T, C]) OrderByDESC

func (q *SelectQuery[T, C]) OrderByDESC(fields ...C) *SelectQuery[T, C]

func (*SelectQuery[T, C]) OrderByRaw

func (q *SelectQuery[T, C]) OrderByRaw(rawSQL ...string) *SelectQuery[T, C]

func (*SelectQuery[T, C]) RightJoin

func (q *SelectQuery[T, C]) RightJoin(table string, alias string, onClauses ...clause.Clause[C]) *SelectQuery[T, C]

RightJoin adds a RIGHT JOIN clause

func (*SelectQuery[T, C]) ScanAbleFields

func (q *SelectQuery[T, C]) ScanAbleFields() []string

func (*SelectQuery[T, C]) SetLimit

func (q *SelectQuery[T, C]) SetLimit(limit int)

func (*SelectQuery[T, C]) SetOffset

func (q *SelectQuery[T, C]) SetOffset(offset int)

func (*SelectQuery[T, C]) SetOrderBy

func (q *SelectQuery[T, C]) SetOrderBy(asc bool, fields ...C)

func (*SelectQuery[T, C]) Where

func (q *SelectQuery[T, C]) Where(clause ...clause.Clause[C]) *SelectQuery[T, C]

type TableDML

type TableDML[T types.TableAlias, C types.ColumnAlias] struct {
	// contains filtered or unexported fields
}

func NewTableDML

func NewTableDML[T types.TableAlias, C types.ColumnAlias](alias T, fields ...C) *TableDML[T, C]

func (*TableDML[T, C]) And

func (t *TableDML[T, C]) And(clauses ...clause.Clause[C]) clause.Clause[C]

func (*TableDML[T, C]) Delete

func (t *TableDML[T, C]) Delete() *DeleteQuery[T, C]

func (*TableDML[T, C]) ExistsOf

func (t *TableDML[T, C]) ExistsOf(query types.Query) clause.Clause[C]

func (*TableDML[T, C]) ExistsRaw

func (t *TableDML[T, C]) ExistsRaw(sql string, args ...any) clause.Clause[C]

func (*TableDML[T, C]) Insert

func (t *TableDML[T, C]) Insert() *InsertQuery[T, C]

func (*TableDML[T, C]) NotExistsOf

func (t *TableDML[T, C]) NotExistsOf(query types.Query) clause.Clause[C]

func (*TableDML[T, C]) NotExistsRaw

func (t *TableDML[T, C]) NotExistsRaw(sql string, args ...any) clause.Clause[C]

func (*TableDML[T, C]) Or

func (t *TableDML[T, C]) Or(clauses ...clause.Clause[C]) clause.Clause[C]

func (*TableDML[T, C]) Raw

func (t *TableDML[T, C]) Raw(sql string, args ...any) clause.Clause[C]

func (*TableDML[T, C]) Select

func (t *TableDML[T, C]) Select(field ...C) *SelectQuery[T, C]

func (*TableDML[T, C]) Select1

func (t *TableDML[T, C]) Select1() *SelectQuery[T, C]

func (*TableDML[T, C]) SelectAll

func (t *TableDML[T, C]) SelectAll() *SelectQuery[T, C]

func (*TableDML[T, C]) Update

func (t *TableDML[T, C]) Update() *UpdateQuery[T, C]

type UpdateQuery

type UpdateQuery[T types.TableAlias, C types.ColumnAlias] struct {
	BaseQuery[T, C]
	// contains filtered or unexported fields
}

func (*UpdateQuery[T, C]) AddToBuilder

func (q *UpdateQuery[T, C]) AddToBuilder(buf *strings.Builder, ta string, paramIndex *int, args *[]any)

func (*UpdateQuery[T, C]) Build

func (q *UpdateQuery[T, C]) Build() (string, []any)

func (*UpdateQuery[T, C]) Returning

func (q *UpdateQuery[T, C]) Returning(fields ...C) *UpdateQuery[T, C]

func (*UpdateQuery[T, C]) ReturningAll

func (q *UpdateQuery[T, C]) ReturningAll() *UpdateQuery[T, C]

func (*UpdateQuery[T, C]) ScanAbleFields

func (q *UpdateQuery[T, C]) ScanAbleFields() []string

func (*UpdateQuery[T, C]) Set

func (q *UpdateQuery[T, C]) Set(assign ...set.ValueSetter[C]) *UpdateQuery[T, C]

func (*UpdateQuery[T, C]) Where

func (q *UpdateQuery[T, C]) Where(clause ...clause.Clause[C]) *UpdateQuery[T, C]

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL