Documentation
¶
Index ¶
- Variables
- func NewArrayLength(array sql.Expression) sql.Expression
- func NewCeil(num sql.Expression) sql.Expression
- func NewCoalesce(args ...sql.Expression) (sql.Expression, error)
- func NewConcat(args ...sql.Expression) (sql.Expression, error)
- func NewConcatWithSeparator(args ...sql.Expression) (sql.Expression, error)
- func NewConnectionID() sql.Expression
- func NewDatabase(c *sql.Catalog) func() sql.Expression
- func NewDay(date sql.Expression) sql.Expression
- func NewDayOfWeek(date sql.Expression) sql.Expression
- func NewDayOfYear(date sql.Expression) sql.Expression
- func NewFloor(num sql.Expression) sql.Expression
- func NewHour(date sql.Expression) sql.Expression
- func NewIsBinary(e sql.Expression) sql.Expression
- func NewJSONExtract(args ...sql.Expression) (sql.Expression, error)
- func NewLog(args ...sql.Expression) (sql.Expression, error)
- func NewLogBase(base float64, e sql.Expression) sql.Expression
- func NewLogBaseFunc(base float64) func(e sql.Expression) sql.Expression
- func NewLower(e sql.Expression) sql.Expression
- func NewMinute(date sql.Expression) sql.Expression
- func NewMonth(date sql.Expression) sql.Expression
- func NewPad(pType padType, args ...sql.Expression) (sql.Expression, error)
- func NewPadFunc(pType padType) func(e ...sql.Expression) (sql.Expression, error)
- func NewPower(e1, e2 sql.Expression) sql.Expression
- func NewRepeat(str sql.Expression, count sql.Expression) sql.Expression
- func NewReplace(str sql.Expression, fromStr sql.Expression, toStr sql.Expression) sql.Expression
- func NewReverse(e sql.Expression) sql.Expression
- func NewRound(args ...sql.Expression) (sql.Expression, error)
- func NewSecond(date sql.Expression) sql.Expression
- func NewSoundex(e sql.Expression) sql.Expression
- func NewSplit(str, delimiter sql.Expression) sql.Expression
- func NewSqrt(e sql.Expression) sql.Expression
- func NewSubstring(args ...sql.Expression) (sql.Expression, error)
- func NewTrim(tType trimType, str sql.Expression) sql.Expression
- func NewTrimFunc(tType trimType) func(e sql.Expression) sql.Expression
- func NewUpper(e sql.Expression) sql.Expression
- func NewVersion(versionPostfix string) func(...sql.Expression) (sql.Expression, error)
- func NewWeekday(date sql.Expression) sql.Expression
- func NewYear(date sql.Expression) sql.Expression
- type ArrayLength
- type Ceil
- type Coalesce
- func (c *Coalesce) Children() []sql.Expression
- func (c *Coalesce) Eval(ctx *sql.Context, row sql.Row) (interface{}, error)
- func (c *Coalesce) IsNullable() bool
- func (c *Coalesce) Resolved() bool
- func (c *Coalesce) String() string
- func (c *Coalesce) TransformUp(fn sql.TransformExprFunc) (sql.Expression, error)
- func (c *Coalesce) Type() sql.Type
- type Concat
- func (f *Concat) Children() []sql.Expression
- func (f *Concat) Eval(ctx *sql.Context, row sql.Row) (interface{}, error)
- func (f *Concat) IsNullable() bool
- func (f *Concat) Resolved() bool
- func (f *Concat) String() string
- func (f *Concat) TransformUp(fn sql.TransformExprFunc) (sql.Expression, error)
- func (f *Concat) Type() sql.Type
- type ConcatWithSeparator
- func (f *ConcatWithSeparator) Children() []sql.Expression
- func (f *ConcatWithSeparator) Eval(ctx *sql.Context, row sql.Row) (interface{}, error)
- func (f *ConcatWithSeparator) IsNullable() bool
- func (f *ConcatWithSeparator) Resolved() bool
- func (f *ConcatWithSeparator) String() string
- func (f *ConcatWithSeparator) TransformUp(fn sql.TransformExprFunc) (sql.Expression, error)
- func (f *ConcatWithSeparator) Type() sql.Type
- type ConnectionID
- func (ConnectionID) Children() []sql.Expression
- func (ConnectionID) Eval(ctx *sql.Context, _ sql.Row) (interface{}, error)
- func (ConnectionID) IsNullable() bool
- func (ConnectionID) Resolved() bool
- func (ConnectionID) String() string
- func (ConnectionID) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
- func (ConnectionID) Type() sql.Type
- type Database
- func (db *Database) Children() []sql.Expression
- func (db *Database) Eval(ctx *sql.Context, row sql.Row) (interface{}, error)
- func (db *Database) IsNullable() bool
- func (db *Database) Resolved() bool
- func (*Database) String() string
- func (db *Database) TransformUp(fn sql.TransformExprFunc) (sql.Expression, error)
- func (db *Database) Type() sql.Type
- type Day
- type DayOfWeek
- type DayOfYear
- type Floor
- type Hour
- type IsBinary
- type JSONExtract
- func (j *JSONExtract) Children() []sql.Expression
- func (j *JSONExtract) Eval(ctx *sql.Context, row sql.Row) (interface{}, error)
- func (j *JSONExtract) IsNullable() bool
- func (j *JSONExtract) Resolved() bool
- func (j *JSONExtract) String() string
- func (j *JSONExtract) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
- func (j *JSONExtract) Type() sql.Type
- type Log
- type LogBase
- type Lower
- type Minute
- type Month
- type Pad
- func (p *Pad) Children() []sql.Expression
- func (p *Pad) Eval(ctx *sql.Context, row sql.Row) (interface{}, error)
- func (p *Pad) IsNullable() bool
- func (p *Pad) Resolved() bool
- func (p *Pad) String() string
- func (p *Pad) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
- func (p *Pad) Type() sql.Type
- type Power
- type Repeat
- type Replace
- func (r *Replace) Children() []sql.Expression
- func (r *Replace) Eval(ctx *sql.Context, row sql.Row) (interface{}, error)
- func (r *Replace) IsNullable() bool
- func (r *Replace) Resolved() bool
- func (r *Replace) String() string
- func (r *Replace) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
- func (r *Replace) Type() sql.Type
- type Reverse
- type Round
- func (r *Round) Children() []sql.Expression
- func (r *Round) Eval(ctx *sql.Context, row sql.Row) (interface{}, error)
- func (r *Round) IsNullable() bool
- func (r *Round) Resolved() bool
- func (r *Round) String() string
- func (r *Round) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
- func (r *Round) Type() sql.Type
- type Second
- type Soundex
- type Split
- type Sqrt
- type Substring
- func (s *Substring) Children() []sql.Expression
- func (s *Substring) Eval(ctx *sql.Context, row sql.Row) (interface{}, error)
- func (s *Substring) IsNullable() bool
- func (s *Substring) Resolved() bool
- func (s *Substring) String() string
- func (s *Substring) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
- func (*Substring) Type() sql.Type
- type Trim
- type Upper
- type Version
- func (f Version) Children() []sql.Expression
- func (f Version) Eval(ctx *sql.Context, row sql.Row) (interface{}, error)
- func (f Version) IsNullable() bool
- func (f Version) Resolved() bool
- func (f Version) String() string
- func (f Version) TransformUp(fn sql.TransformExprFunc) (sql.Expression, error)
- func (f Version) Type() sql.Type
- type Weekday
- type Year
Constants ¶
This section is empty.
Variables ¶
var Defaults = sql.Functions{ "count": sql.Function1(func(e sql.Expression) sql.Expression { return aggregation.NewCount(e) }), "min": sql.Function1(func(e sql.Expression) sql.Expression { return aggregation.NewMin(e) }), "max": sql.Function1(func(e sql.Expression) sql.Expression { return aggregation.NewMax(e) }), "avg": sql.Function1(func(e sql.Expression) sql.Expression { return aggregation.NewAvg(e) }), "sum": sql.Function1(func(e sql.Expression) sql.Expression { return aggregation.NewSum(e) }), "is_binary": sql.Function1(NewIsBinary), "substring": sql.FunctionN(NewSubstring), "year": sql.Function1(NewYear), "month": sql.Function1(NewMonth), "day": sql.Function1(NewDay), "weekday": sql.Function1(NewWeekday), "hour": sql.Function1(NewHour), "minute": sql.Function1(NewMinute), "second": sql.Function1(NewSecond), "dayofweek": sql.Function1(NewDayOfWeek), "dayofyear": sql.Function1(NewDayOfYear), "array_length": sql.Function1(NewArrayLength), "split": sql.Function2(NewSplit), "concat": sql.FunctionN(NewConcat), "concat_ws": sql.FunctionN(NewConcatWithSeparator), "lower": sql.Function1(NewLower), "upper": sql.Function1(NewUpper), "ceiling": sql.Function1(NewCeil), "ceil": sql.Function1(NewCeil), "floor": sql.Function1(NewFloor), "round": sql.FunctionN(NewRound), "coalesce": sql.FunctionN(NewCoalesce), "json_extract": sql.FunctionN(NewJSONExtract), "connection_id": sql.Function0(NewConnectionID), "soundex": sql.Function1(NewSoundex), "ln": sql.Function1(NewLogBaseFunc(float64(math.E))), "log2": sql.Function1(NewLogBaseFunc(float64(2))), "log10": sql.Function1(NewLogBaseFunc(float64(10))), "log": sql.FunctionN(NewLog), "rpad": sql.FunctionN(NewPadFunc(rPadType)), "lpad": sql.FunctionN(NewPadFunc(lPadType)), "sqrt": sql.Function1(NewSqrt), "pow": sql.Function2(NewPower), "power": sql.Function2(NewPower), "ltrim": sql.Function1(NewTrimFunc(lTrimType)), "rtrim": sql.Function1(NewTrimFunc(rTrimType)), "trim": sql.Function1(NewTrimFunc(bTrimType)), "reverse": sql.Function1(NewReverse), "repeat": sql.Function2(NewRepeat), "replace": sql.Function3(NewReplace), }
Defaults is the function map with all the default functions.
var ErrConcatArrayWithOthers = errors.NewKind("can't concat a string array with any other elements")
ErrConcatArrayWithOthers is returned when there are more than 1 argument in concat and any of them is an array.
var ErrDivisionByZero = errors.NewKind("division by zero")
var ErrInvalidArgumentForLogarithm = errors.NewKind("invalid argument value for logarithm: %v")
ErrInvalidArgumentForLogarithm is returned when an invalid argument value is passed to a logarithm function
var ErrNegativeRepeatCount = errors.NewKind("negative Repeat count: %v")
Functions ¶
func NewArrayLength ¶
func NewArrayLength(array sql.Expression) sql.Expression
NewArrayLength creates a new ArrayLength UDF.
func NewCeil ¶
func NewCeil(num sql.Expression) sql.Expression
NewCeil creates a new Ceil expression.
func NewCoalesce ¶
func NewCoalesce(args ...sql.Expression) (sql.Expression, error)
NewCoalesce creates a new Coalesce sql.Expression.
func NewConcat ¶
func NewConcat(args ...sql.Expression) (sql.Expression, error)
NewConcat creates a new Concat UDF.
func NewConcatWithSeparator ¶
func NewConcatWithSeparator(args ...sql.Expression) (sql.Expression, error)
NewConcatWithSeparator creates a new NewConcatWithSeparator UDF.
func NewConnectionID ¶
func NewConnectionID() sql.Expression
NewConnectionID creates a new ConnectionID UDF node.
func NewDatabase ¶
func NewDatabase(c *sql.Catalog) func() sql.Expression
NewDatabase returns a new Database function
func NewDayOfWeek ¶
func NewDayOfWeek(date sql.Expression) sql.Expression
NewDayOfWeek creates a new DayOfWeek UDF.
func NewDayOfYear ¶
func NewDayOfYear(date sql.Expression) sql.Expression
NewDayOfYear creates a new DayOfYear UDF.
func NewFloor ¶
func NewFloor(num sql.Expression) sql.Expression
NewFloor returns a new Floor expression.
func NewIsBinary ¶
func NewIsBinary(e sql.Expression) sql.Expression
NewIsBinary creates a new IsBinary expression.
func NewJSONExtract ¶
func NewJSONExtract(args ...sql.Expression) (sql.Expression, error)
NewJSONExtract creates a new JSONExtract UDF.
func NewLog ¶
func NewLog(args ...sql.Expression) (sql.Expression, error)
NewLog creates a new Log expression.
func NewLogBase ¶
func NewLogBase(base float64, e sql.Expression) sql.Expression
NewLogBase creates a new LogBase expression.
func NewLogBaseFunc ¶
func NewLogBaseFunc(base float64) func(e sql.Expression) sql.Expression
NewLogBaseFunc returns LogBase creator function with a specific base.
func NewLower ¶
func NewLower(e sql.Expression) sql.Expression
NewLower creates a new Lower expression.
func NewMinute ¶
func NewMinute(date sql.Expression) sql.Expression
NewMinute creates a new Minute UDF.
func NewPad ¶
func NewPad(pType padType, args ...sql.Expression) (sql.Expression, error)
NewPad creates a new Pad expression.
func NewPadFunc ¶
func NewPadFunc(pType padType) func(e ...sql.Expression) (sql.Expression, error)
NewPadFunc returns a Pad creator function with a specific padType.
func NewPower ¶
func NewPower(e1, e2 sql.Expression) sql.Expression
NewPower creates a new Power expression.
func NewRepeat ¶
func NewRepeat(str sql.Expression, count sql.Expression) sql.Expression
NewRepeat creates a new Repeat expression.
func NewReplace ¶
func NewReplace(str sql.Expression, fromStr sql.Expression, toStr sql.Expression) sql.Expression
NewReplace creates a new Replace expression.
func NewReverse ¶
func NewReverse(e sql.Expression) sql.Expression
NewReverse creates a new Reverse expression.
func NewRound ¶
func NewRound(args ...sql.Expression) (sql.Expression, error)
NewRound returns a new Round expression.
func NewSecond ¶
func NewSecond(date sql.Expression) sql.Expression
NewSecond creates a new Second UDF.
func NewSoundex ¶
func NewSoundex(e sql.Expression) sql.Expression
NewSoundex creates a new Soundex expression.
func NewSplit ¶
func NewSplit(str, delimiter sql.Expression) sql.Expression
NewSplit creates a new Split UDF.
func NewSubstring ¶
func NewSubstring(args ...sql.Expression) (sql.Expression, error)
NewSubstring creates a new substring UDF.
func NewTrim ¶
func NewTrim(tType trimType, str sql.Expression) sql.Expression
NewTrim creates a new Trim expression.
func NewTrimFunc ¶
func NewTrimFunc(tType trimType) func(e sql.Expression) sql.Expression
NewTrimFunc returns a Trim creator function with a specific trimType.
func NewUpper ¶
func NewUpper(e sql.Expression) sql.Expression
NewUpper creates a new Lower expression.
func NewVersion ¶
func NewVersion(versionPostfix string) func(...sql.Expression) (sql.Expression, error)
NewVersion creates a new Version UDF.
func NewWeekday ¶
func NewWeekday(date sql.Expression) sql.Expression
NewWeekday creates a new Weekday UDF.
Types ¶
type ArrayLength ¶
type ArrayLength struct {
expression.UnaryExpression
}
ArrayLength returns the length of an array.
func (*ArrayLength) String ¶
func (f *ArrayLength) String() string
func (*ArrayLength) TransformUp ¶
func (f *ArrayLength) TransformUp(fn sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
func (*ArrayLength) Type ¶
func (*ArrayLength) Type() sql.Type
Type implements the Expression interface.
type Ceil ¶
type Ceil struct {
expression.UnaryExpression
}
Ceil returns the smallest integer value not less than X.
func (*Ceil) TransformUp ¶
func (c *Ceil) TransformUp(fn sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Coalesce ¶
type Coalesce struct {
// contains filtered or unexported fields
}
Coalesce returns the first non-NULL value in the list, or NULL if there are no non-NULL values.
func (*Coalesce) Children ¶
func (c *Coalesce) Children() []sql.Expression
Children implements the sql.Expression interface.
func (*Coalesce) Eval ¶
Eval implements the sql.Expression interface. The function evaluates the first non-nil argument. If the value is nil, then we keep going, otherwise we return the first non-nil value.
func (*Coalesce) IsNullable ¶
IsNullable implements the sql.Expression interface. Returns true if all arguments are nil or of the first non-nil argument is nullable, otherwise false.
func (*Coalesce) Resolved ¶
Resolved implements the sql.Expression interface. The function checks if first non-nil argument is resolved.
func (*Coalesce) TransformUp ¶
func (c *Coalesce) TransformUp(fn sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the sql.Expression interface.
type Concat ¶
type Concat struct {
// contains filtered or unexported fields
}
Concat joins several strings together.
func (*Concat) Children ¶
func (f *Concat) Children() []sql.Expression
Children implements the Expression interface.
func (*Concat) IsNullable ¶
IsNullable implements the Expression interface.
func (*Concat) TransformUp ¶
func (f *Concat) TransformUp(fn sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type ConcatWithSeparator ¶
type ConcatWithSeparator struct {
// contains filtered or unexported fields
}
ConcatWithSeparator joins several strings together. The first argument is the separator for the rest of the arguments. The separator is added between the strings to be concatenated. The separator can be a string, as can the rest of the arguments. If the separator is NULL, the result is NULL.
func (*ConcatWithSeparator) Children ¶
func (f *ConcatWithSeparator) Children() []sql.Expression
Children implements the Expression interface.
func (*ConcatWithSeparator) IsNullable ¶
func (f *ConcatWithSeparator) IsNullable() bool
IsNullable implements the Expression interface.
func (*ConcatWithSeparator) Resolved ¶
func (f *ConcatWithSeparator) Resolved() bool
Resolved implements the Expression interface.
func (*ConcatWithSeparator) String ¶
func (f *ConcatWithSeparator) String() string
func (*ConcatWithSeparator) TransformUp ¶
func (f *ConcatWithSeparator) TransformUp(fn sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
func (*ConcatWithSeparator) Type ¶
func (f *ConcatWithSeparator) Type() sql.Type
Type implements the Expression interface.
type ConnectionID ¶
type ConnectionID struct{}
ConnectionID returns the current connection id.
func (ConnectionID) Children ¶
func (ConnectionID) Children() []sql.Expression
Children implements the sql.Expression interface.
func (ConnectionID) IsNullable ¶
func (ConnectionID) IsNullable() bool
IsNullable implements the sql.Expression interface.
func (ConnectionID) Resolved ¶
func (ConnectionID) Resolved() bool
Resolved implements the sql.Expression interface.
func (ConnectionID) String ¶
func (ConnectionID) String() string
String implements the fmt.Stringer interface.
func (ConnectionID) TransformUp ¶
func (ConnectionID) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the sql.Expression interface.
func (ConnectionID) Type ¶
func (ConnectionID) Type() sql.Type
Type implements the sql.Expression interface.
type Database ¶
type Database struct {
// contains filtered or unexported fields
}
Database stands for DATABASE() function
func (*Database) Children ¶
func (db *Database) Children() []sql.Expression
Children implements the sql.Expression interface.
func (*Database) IsNullable ¶
IsNullable implements the sql.Expression interface. The function returns always true
func (*Database) TransformUp ¶
func (db *Database) TransformUp(fn sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the sql.Expression interface.
type Day ¶
type Day struct {
expression.UnaryExpression
}
Day is a function that returns the day of a date.
func (*Day) TransformUp ¶
func (d *Day) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type DayOfWeek ¶
type DayOfWeek struct {
expression.UnaryExpression
}
DayOfWeek is a function that returns the day of the week from a date where 1 = Sunday, ..., 7 = Saturday.
func (*DayOfWeek) TransformUp ¶
func (d *DayOfWeek) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type DayOfYear ¶
type DayOfYear struct {
expression.UnaryExpression
}
DayOfYear is a function that returns the day of the year from a date.
func (*DayOfYear) TransformUp ¶
func (d *DayOfYear) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Floor ¶
type Floor struct {
expression.UnaryExpression
}
Floor returns the biggest integer value not less than X.
func (*Floor) TransformUp ¶
func (f *Floor) TransformUp(fn sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Hour ¶
type Hour struct {
expression.UnaryExpression
}
Hour is a function that returns the hour of a date.
func (*Hour) TransformUp ¶
func (h *Hour) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type IsBinary ¶
type IsBinary struct {
expression.UnaryExpression
}
IsBinary is a function that returns whether a blob is binary or not.
func (*IsBinary) TransformUp ¶
func (ib *IsBinary) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type JSONExtract ¶
type JSONExtract struct {
JSON sql.Expression
Paths []sql.Expression
}
JSONExtract extracts data from a json document using json paths.
func (*JSONExtract) Children ¶
func (j *JSONExtract) Children() []sql.Expression
Children implements the sql.Expression interface.
func (*JSONExtract) IsNullable ¶
func (j *JSONExtract) IsNullable() bool
IsNullable implements the sql.Expression interface.
func (*JSONExtract) Resolved ¶
func (j *JSONExtract) Resolved() bool
Resolved implements the sql.Expression interface.
func (*JSONExtract) String ¶
func (j *JSONExtract) String() string
func (*JSONExtract) TransformUp ¶
func (j *JSONExtract) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the sql.Expression interface.
func (*JSONExtract) Type ¶
func (j *JSONExtract) Type() sql.Type
Type implements the sql.Expression interface.
type Log ¶
type Log struct {
expression.BinaryExpression
}
Log is a function that returns the natural logarithm of a value.
func (*Log) Children ¶
func (l *Log) Children() []sql.Expression
Children implements the Expression interface.
func (*Log) IsNullable ¶
IsNullable implements the Expression interface.
func (*Log) TransformUp ¶
func (l *Log) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type LogBase ¶
type LogBase struct {
expression.UnaryExpression
// contains filtered or unexported fields
}
LogBase is a function that returns the logarithm of a value with a specific base.
func (*LogBase) IsNullable ¶
IsNullable implements the sql.Expression interface.
func (*LogBase) TransformUp ¶
func (l *LogBase) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Lower ¶
type Lower struct {
expression.UnaryExpression
}
Lower is a function that returns the lowercase of the text provided.
func (*Lower) TransformUp ¶
func (l *Lower) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Minute ¶
type Minute struct {
expression.UnaryExpression
}
Minute is a function that returns the minute of a date.
func (*Minute) TransformUp ¶
func (m *Minute) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Month ¶
type Month struct {
expression.UnaryExpression
}
Month is a function that returns the month of a date.
func (*Month) TransformUp ¶
func (m *Month) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Pad ¶
type Pad struct {
// contains filtered or unexported fields
}
Pad is a function that pads a string with another string.
func (*Pad) Children ¶
func (p *Pad) Children() []sql.Expression
Children implements the Expression interface.
func (*Pad) IsNullable ¶
IsNullable implements the Expression interface.
func (*Pad) TransformUp ¶
func (p *Pad) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Power ¶
type Power struct {
expression.BinaryExpression
}
Power is a function that returns value of X raised to the power of Y.
func (*Power) IsNullable ¶
IsNullable implements the Expression interface.
func (*Power) TransformUp ¶
func (p *Power) TransformUp(fn sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Repeat ¶
type Repeat struct {
expression.BinaryExpression
}
Repeat is a function that returns the string repeated n times.
func (*Repeat) TransformUp ¶
func (r *Repeat) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Replace ¶
type Replace struct {
// contains filtered or unexported fields
}
Replace is a function that returns a string with all occurrences of fromStr replaced by the string toStr
func (*Replace) Children ¶
func (r *Replace) Children() []sql.Expression
Children implements the Expression interface.
func (*Replace) IsNullable ¶
IsNullable implements the Expression interface.
func (*Replace) TransformUp ¶
func (r *Replace) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Reverse ¶
type Reverse struct {
expression.UnaryExpression
}
Reverse is a function that returns the reverse of the text provided.
func (*Reverse) TransformUp ¶
func (r *Reverse) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Round ¶
type Round struct {
expression.BinaryExpression
}
Round returns the number (x) with (d) requested decimal places. If d is negative, the number is returned with the (abs(d)) least significant digits of it's integer part set to 0. If d is not specified or nil/null it defaults to 0.
func (*Round) Children ¶
func (r *Round) Children() []sql.Expression
Children implements the Expression interface.
func (*Round) IsNullable ¶
IsNullable implements the Expression interface.
func (*Round) TransformUp ¶
func (r *Round) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Second ¶
type Second struct {
expression.UnaryExpression
}
Second is a function that returns the second of a date.
func (*Second) TransformUp ¶
func (s *Second) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Soundex ¶
type Soundex struct {
expression.UnaryExpression
}
Soundex is a function that returns the soundex of a string. Two strings that sound almost the same should have identical soundex strings. A standard soundex string is four characters long, but the SOUNDEX() function returns an arbitrarily long string.
func (*Soundex) TransformUp ¶
func (s *Soundex) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Split ¶
type Split struct {
expression.BinaryExpression
}
Split receives a string and returns the parts of it splitted by a delimiter.
func (*Split) IsNullable ¶
IsNullable implements the Expression interface.
func (*Split) TransformUp ¶
func (f *Split) TransformUp(fn sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Sqrt ¶
type Sqrt struct {
expression.UnaryExpression
}
Sqrt is a function that returns the square value of the number provided.
func (*Sqrt) IsNullable ¶
IsNullable implements the Expression interface.
func (*Sqrt) TransformUp ¶
func (s *Sqrt) TransformUp(fn sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Substring ¶
type Substring struct {
// contains filtered or unexported fields
}
Substring is a function to return a part of a string. This function behaves as the homonym MySQL function. Since Go strings are UTF8, this function does not return a direct sub string str[start:start+length], instead returns the substring of rune s. That is, "á"[0:1] does not return a partial unicode glyph, but "á" itself.
func (*Substring) Children ¶
func (s *Substring) Children() []sql.Expression
Children implements the Expression interface.
func (*Substring) IsNullable ¶
IsNullable implements the Expression interface.
func (*Substring) TransformUp ¶
func (s *Substring) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Trim ¶
type Trim struct {
expression.UnaryExpression
// contains filtered or unexported fields
}
Trim is a function that returns the string with prefix or suffix spaces removed based on the trimType
func (*Trim) IsNullable ¶
IsNullable implements the Expression interface.
func (*Trim) TransformUp ¶
func (t *Trim) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Upper ¶
type Upper struct {
expression.UnaryExpression
}
Upper is a function that returns the UPPERCASE of the text provided.
func (*Upper) TransformUp ¶
func (u *Upper) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Version ¶
type Version string
Version is a function that returns server version.
func (Version) Children ¶
func (f Version) Children() []sql.Expression
Children implements the Expression interface.
func (Version) IsNullable ¶
IsNullable implements the Expression interface.
func (Version) TransformUp ¶
func (f Version) TransformUp(fn sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Weekday ¶
type Weekday struct {
expression.UnaryExpression
}
Weekday is a function that returns the weekday of a date where 0 = Monday, ..., 6 = Sunday.
func (*Weekday) TransformUp ¶
func (d *Weekday) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.
type Year ¶
type Year struct {
expression.UnaryExpression
}
Year is a function that returns the year of a date.
func (*Year) TransformUp ¶
func (y *Year) TransformUp(f sql.TransformExprFunc) (sql.Expression, error)
TransformUp implements the Expression interface.