Versions in this module Expand all Collapse all v1 v1.0.0 Jul 23, 2019 Changes in this version + const DEFAULT + const LOCK_ACCESS_EXCLUSIVE + const LOCK_ACCESS_SHARE + const LOCK_EXCLUSIVE + const LOCK_ROW_EXCLUSIVE + const LOCK_ROW_SHARE + const LOCK_SHARE + const LOCK_SHARE_ROW_EXCLUSIVE + const LOCK_SHARE_UPDATE_EXCLUSIVE + var KEY_SHARE = newLock("KEY SHARE") + var NO_KEY_UPDATE = newLock("NO KEY UPDATE") + var NULL = newNullLiteral() + var SHARE = newLock("SHARE") + var STAR = newStarLiteral() + var UPDATE = newLock("UPDATE") + func CAST(expression Expression) cast + type BoolExpression interface + AND func(rhs BoolExpression) BoolExpression + EQ func(rhs BoolExpression) BoolExpression + IS_DISTINCT_FROM func(rhs BoolExpression) BoolExpression + IS_FALSE func() BoolExpression + IS_NOT_DISTINCT_FROM func(rhs BoolExpression) BoolExpression + IS_NOT_FALSE func() BoolExpression + IS_NOT_TRUE func() BoolExpression + IS_NOT_UNKNOWN func() BoolExpression + IS_TRUE func() BoolExpression + IS_UNKNOWN func() BoolExpression + NOT_EQ func(rhs BoolExpression) BoolExpression + OR func(rhs BoolExpression) BoolExpression + func BOOL_AND(boolExpression BoolExpression) BoolExpression + func BOOL_OR(boolExpression BoolExpression) BoolExpression + func Bool(value bool) BoolExpression + func BoolExp(expression Expression) BoolExpression + func EVERY(boolExpression BoolExpression) BoolExpression + func EXISTS(subQuery SelectStatement) BoolExpression + func NOT(exp BoolExpression) BoolExpression + type CaseOperator interface + ELSE func(els Expression) CaseOperator + THEN func(then Expression) CaseOperator + WHEN func(condition Expression) CaseOperator + func CASE(expression ...Expression) CaseOperator + type Column interface + type ColumnBool interface + From func(subQuery SelectTable) ColumnBool + func BoolColumn(name string) ColumnBool + type ColumnDate interface + From func(subQuery SelectTable) ColumnDate + func DateColumn(name string) ColumnDate + type ColumnFloat interface + From func(subQuery SelectTable) ColumnFloat + func FloatColumn(name string) ColumnFloat + type ColumnInteger interface + From func(subQuery SelectTable) ColumnInteger + func IntegerColumn(name string) ColumnInteger + type ColumnList []Column + func (cl ColumnList) Name() string + func (cl ColumnList) TableName() string + type ColumnString interface + From func(subQuery SelectTable) ColumnString + func StringColumn(name string) ColumnString + type ColumnTime interface + From func(subQuery SelectTable) ColumnTime + func TimeColumn(name string) ColumnTime + type ColumnTimestamp interface + From func(subQuery SelectTable) ColumnTimestamp + func TimestampColumn(name string) ColumnTimestamp + type ColumnTimestampz interface + From func(subQuery SelectTable) ColumnTimestampz + func TimestampzColumn(name string) ColumnTimestampz + type ColumnTimez interface + From func(subQuery SelectTable) ColumnTimez + func TimezColumn(name string) ColumnTimez + type DateExpression interface + EQ func(rhs DateExpression) BoolExpression + GT func(rhs DateExpression) BoolExpression + GT_EQ func(rhs DateExpression) BoolExpression + IS_DISTINCT_FROM func(rhs DateExpression) BoolExpression + IS_NOT_DISTINCT_FROM func(rhs DateExpression) BoolExpression + LT func(rhs DateExpression) BoolExpression + LT_EQ func(rhs DateExpression) BoolExpression + NOT_EQ func(rhs DateExpression) BoolExpression + func CURRENT_DATE() DateExpression + func Date(year, month, day int) DateExpression + func DateExp(expression Expression) DateExpression + func TO_DATE(dateStr, format StringExpression) DateExpression + type DeleteStatement interface + RETURNING func(projections ...projection) DeleteStatement + WHERE func(expression BoolExpression) DeleteStatement + type Expression interface + AS func(alias string) projection + ASC func() orderByClause + DESC func() orderByClause + IN func(expressions ...Expression) BoolExpression + IS_NOT_NULL func() BoolExpression + IS_NULL func() BoolExpression + NOT_IN func(expressions ...Expression) BoolExpression + func COALESCE(value Expression, values ...Expression) Expression + func GREATEST(value Expression, values ...Expression) Expression + func LEAST(value Expression, values ...Expression) Expression + func NULLIF(value1, value2 Expression) Expression + func RAW(raw string) Expression + func ROW(expressions ...Expression) Expression + func WRAP(expression ...Expression) Expression + type FloatExpression interface + ADD func(rhs NumericExpression) FloatExpression + DIV func(rhs NumericExpression) FloatExpression + EQ func(rhs FloatExpression) BoolExpression + GT func(rhs FloatExpression) BoolExpression + GT_EQ func(rhs FloatExpression) BoolExpression + IS_DISTINCT_FROM func(rhs FloatExpression) BoolExpression + IS_NOT_DISTINCT_FROM func(rhs FloatExpression) BoolExpression + LT func(rhs FloatExpression) BoolExpression + LT_EQ func(rhs FloatExpression) BoolExpression + MOD func(rhs NumericExpression) FloatExpression + MUL func(rhs NumericExpression) FloatExpression + NOT_EQ func(rhs FloatExpression) BoolExpression + POW func(rhs NumericExpression) FloatExpression + SUB func(rhs NumericExpression) FloatExpression + func ABSf(floatExpression FloatExpression) FloatExpression + func AVG(numericExpression NumericExpression) FloatExpression + func CBRT(numericExpression NumericExpression) FloatExpression + func CEIL(floatExpression FloatExpression) FloatExpression + func FLOOR(floatExpression FloatExpression) FloatExpression + func Float(value float64) FloatExpression + func FloatExp(expression Expression) FloatExpression + func LN(floatExpression FloatExpression) FloatExpression + func LOG(floatExpression FloatExpression) FloatExpression + func MAXf(floatExpression FloatExpression) FloatExpression + func MINf(floatExpression FloatExpression) FloatExpression + func ROUND(floatExpression FloatExpression, precision ...IntegerExpression) FloatExpression + func SIGN(floatExpression FloatExpression) FloatExpression + func SQRT(numericExpression NumericExpression) FloatExpression + func SUMf(floatExpression FloatExpression) FloatExpression + func TO_NUMBER(floatStr, format StringExpression) FloatExpression + func TRUNC(floatExpression FloatExpression, precision ...IntegerExpression) FloatExpression + type InsertStatement interface + MODEL func(data interface{}) InsertStatement + MODELS func(data interface{}) InsertStatement + QUERY func(selectStatement SelectStatement) InsertStatement + RETURNING func(projections ...projection) InsertStatement + VALUES func(value interface{}, values ...interface{}) InsertStatement + type IntegerExpression interface + ADD func(rhs IntegerExpression) IntegerExpression + BIT_AND func(rhs IntegerExpression) IntegerExpression + BIT_OR func(rhs IntegerExpression) IntegerExpression + BIT_SHIFT_LEFT func(shift IntegerExpression) IntegerExpression + BIT_SHIFT_RIGHT func(shift IntegerExpression) IntegerExpression + BIT_XOR func(rhs IntegerExpression) IntegerExpression + DIV func(rhs IntegerExpression) IntegerExpression + EQ func(rhs IntegerExpression) BoolExpression + GT func(rhs IntegerExpression) BoolExpression + GT_EQ func(rhs IntegerExpression) BoolExpression + IS_DISTINCT_FROM func(rhs IntegerExpression) BoolExpression + IS_NOT_DISTINCT_FROM func(rhs IntegerExpression) BoolExpression + LT func(rhs IntegerExpression) BoolExpression + LT_EQ func(rhs IntegerExpression) BoolExpression + MOD func(rhs IntegerExpression) IntegerExpression + MUL func(rhs IntegerExpression) IntegerExpression + NOT_EQ func(rhs IntegerExpression) BoolExpression + POW func(rhs IntegerExpression) IntegerExpression + SUB func(rhs IntegerExpression) IntegerExpression + func ABSi(integerExpression IntegerExpression) IntegerExpression + func BIT_AND(integerExpression IntegerExpression) IntegerExpression + func BIT_LENGTH(stringExpression StringExpression) IntegerExpression + func BIT_NOT(expr IntegerExpression) IntegerExpression + func BIT_OR(integerExpression IntegerExpression) IntegerExpression + func CHAR_LENGTH(stringExpression StringExpression) IntegerExpression + func COUNT(expression Expression) IntegerExpression + func Int(value int64) IntegerExpression + func IntExp(expression Expression) IntegerExpression + func MAXi(integerExpression IntegerExpression) IntegerExpression + func MINi(integerExpression IntegerExpression) IntegerExpression + func OCTET_LENGTH(stringExpression StringExpression) IntegerExpression + func STRPOS(str, substring StringExpression) IntegerExpression + func SUMi(integerExpression IntegerExpression) IntegerExpression + type LockStatement interface + IN func(lockMode TableLockMode) LockStatement + NOWAIT func() LockStatement + func LOCK(tables ...WritableTable) LockStatement + type NumericExpression interface + type ProjectionList []projection + type ReadableTable interface + type SelectLock interface + NOWAIT func() SelectLock + SKIP_LOCKED func() SelectLock + type SelectStatement interface + AsTable func(alias string) SelectTable + DISTINCT func() SelectStatement + EXCEPT func(rhs SelectStatement) SelectStatement + EXCEPT_ALL func(rhs SelectStatement) SelectStatement + FOR func(lock SelectLock) SelectStatement + FROM func(table ReadableTable) SelectStatement + GROUP_BY func(groupByClauses ...groupByClause) SelectStatement + HAVING func(boolExpression BoolExpression) SelectStatement + INTERSECT func(rhs SelectStatement) SelectStatement + INTERSECT_ALL func(rhs SelectStatement) SelectStatement + LIMIT func(limit int64) SelectStatement + OFFSET func(offset int64) SelectStatement + ORDER_BY func(orderByClauses ...orderByClause) SelectStatement + UNION func(rhs SelectStatement) SelectStatement + UNION_ALL func(rhs SelectStatement) SelectStatement + WHERE func(expression BoolExpression) SelectStatement + func EXCEPT(lhs, rhs SelectStatement) SelectStatement + func EXCEPT_ALL(lhs, rhs SelectStatement) SelectStatement + func INTERSECT(lhs, rhs SelectStatement, selects ...SelectStatement) SelectStatement + func INTERSECT_ALL(lhs, rhs SelectStatement, selects ...SelectStatement) SelectStatement + func SELECT(projection1 projection, projections ...projection) SelectStatement + func UNION(lhs, rhs SelectStatement, selects ...SelectStatement) SelectStatement + func UNION_ALL(lhs, rhs SelectStatement, selects ...SelectStatement) SelectStatement + type SelectTable interface + Alias func() string + AllColumns func() ProjectionList + type Statement interface + DebugSql func() (query string, err error) + Exec func(db execution.DB) (sql.Result, error) + ExecContext func(context context.Context, db execution.DB) (sql.Result, error) + Query func(db execution.DB, destination interface{}) error + QueryContext func(context context.Context, db execution.DB, destination interface{}) error + Sql func() (query string, args []interface{}, err error) + type StringExpression interface + CONCAT func(rhs Expression) StringExpression + EQ func(rhs StringExpression) BoolExpression + GT func(rhs StringExpression) BoolExpression + GT_EQ func(rhs StringExpression) BoolExpression + IS_DISTINCT_FROM func(rhs StringExpression) BoolExpression + IS_NOT_DISTINCT_FROM func(rhs StringExpression) BoolExpression + LIKE func(pattern StringExpression) BoolExpression + LT func(rhs StringExpression) BoolExpression + LT_EQ func(rhs StringExpression) BoolExpression + NOT_EQ func(rhs StringExpression) BoolExpression + NOT_LIKE func(pattern StringExpression) BoolExpression + NOT_SIMILAR_TO func(pattern StringExpression) BoolExpression + SIMILAR_TO func(pattern StringExpression) BoolExpression + func BTRIM(stringExpression StringExpression, trimChars ...StringExpression) StringExpression + func CHR(integerExpression IntegerExpression) StringExpression + func CONVERT(str StringExpression, srcEncoding StringExpression, ...) StringExpression + func CONVERT_FROM(str StringExpression, srcEncoding StringExpression) StringExpression + func CONVERT_TO(str StringExpression, toEncoding StringExpression) StringExpression + func DECODE(data StringExpression, format StringExpression) StringExpression + func ENCODE(data StringExpression, format StringExpression) StringExpression + func INITCAP(str StringExpression) StringExpression + func LEFT(str StringExpression, n IntegerExpression) StringExpression + func LENGTH(str StringExpression, encoding ...StringExpression) StringExpression + func LOWER(stringExpression StringExpression) StringExpression + func LPAD(str StringExpression, length IntegerExpression, text ...StringExpression) StringExpression + func LTRIM(str StringExpression, trimChars ...StringExpression) StringExpression + func MD5(stringExpression StringExpression) StringExpression + func NewEnumValue(name string) StringExpression + func REPEAT(str StringExpression, n IntegerExpression) StringExpression + func REPLACE(text, from, to StringExpression) StringExpression + func REVERSE(stringExpression StringExpression) StringExpression + func RIGHT(str StringExpression, n IntegerExpression) StringExpression + func RPAD(str StringExpression, length IntegerExpression, text ...StringExpression) StringExpression + func RTRIM(str StringExpression, trimChars ...StringExpression) StringExpression + func SUBSTR(str StringExpression, from IntegerExpression, count ...IntegerExpression) StringExpression + func String(value string) StringExpression + func StringExp(expression Expression) StringExpression + func TO_ASCII(str StringExpression, encoding ...StringExpression) StringExpression + func TO_CHAR(expression Expression, format StringExpression) StringExpression + func TO_HEX(number IntegerExpression) StringExpression + func UPPER(stringExpression StringExpression) StringExpression + type Table interface + AS func(alias string) + SchemaName func() string + TableName func() string + func NewTable(schemaName, name string, columns ...Column) Table + type TableLockMode string + type TimeExpression interface + EQ func(rhs TimeExpression) BoolExpression + GT func(rhs TimeExpression) BoolExpression + GT_EQ func(rhs TimeExpression) BoolExpression + IS_DISTINCT_FROM func(rhs TimeExpression) BoolExpression + IS_NOT_DISTINCT_FROM func(rhs TimeExpression) BoolExpression + LT func(rhs TimeExpression) BoolExpression + LT_EQ func(rhs TimeExpression) BoolExpression + NOT_EQ func(rhs TimeExpression) BoolExpression + func LOCALTIME(precision ...int) TimeExpression + func Time(hour, minute, second, milliseconds int) TimeExpression + func TimeExp(expression Expression) TimeExpression + type TimestampExpression interface + EQ func(rhs TimestampExpression) BoolExpression + GT func(rhs TimestampExpression) BoolExpression + GT_EQ func(rhs TimestampExpression) BoolExpression + IS_DISTINCT_FROM func(rhs TimestampExpression) BoolExpression + IS_NOT_DISTINCT_FROM func(rhs TimestampExpression) BoolExpression + LT func(rhs TimestampExpression) BoolExpression + LT_EQ func(rhs TimestampExpression) BoolExpression + NOT_EQ func(rhs TimestampExpression) BoolExpression + func LOCALTIMESTAMP(precision ...int) TimestampExpression + func Timestamp(year, month, day, hour, minute, second, milliseconds int) TimestampExpression + func TimestampExp(expression Expression) TimestampExpression + type TimestampzExpression interface + EQ func(rhs TimestampzExpression) BoolExpression + GT func(rhs TimestampzExpression) BoolExpression + GT_EQ func(rhs TimestampzExpression) BoolExpression + IS_DISTINCT_FROM func(rhs TimestampzExpression) BoolExpression + IS_NOT_DISTINCT_FROM func(rhs TimestampzExpression) BoolExpression + LT func(rhs TimestampzExpression) BoolExpression + LT_EQ func(rhs TimestampzExpression) BoolExpression + NOT_EQ func(rhs TimestampzExpression) BoolExpression + func CURRENT_TIMESTAMP(precision ...int) TimestampzExpression + func NOW() TimestampzExpression + func TO_TIMESTAMP(timestampzStr, format StringExpression) TimestampzExpression + func Timestampz(year, month, day, hour, minute, second, milliseconds, timezone int) TimestampzExpression + func TimestampzExp(expression Expression) TimestampzExpression + type TimezExpression interface + EQ func(rhs TimezExpression) BoolExpression + GT func(rhs TimezExpression) BoolExpression + GT_EQ func(rhs TimezExpression) BoolExpression + IS_DISTINCT_FROM func(rhs TimezExpression) BoolExpression + IS_NOT_DISTINCT_FROM func(rhs TimezExpression) BoolExpression + LT func(rhs TimezExpression) BoolExpression + LT_EQ func(rhs TimezExpression) BoolExpression + NOT_EQ func(rhs TimezExpression) BoolExpression + func CURRENT_TIME(precision ...int) TimezExpression + func Timez(hour, minute, second, milliseconds, timezone int) TimezExpression + func TimezExp(expression Expression) TimezExpression + type UpdateStatement interface + MODEL func(data interface{}) UpdateStatement + RETURNING func(projections ...projection) UpdateStatement + SET func(value interface{}, values ...interface{}) UpdateStatement + WHERE func(expression BoolExpression) UpdateStatement + type WritableTable interface