driver

package
v1.1.0-beta.0...-f2db9c4 Latest Latest
Warning

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

Go to latest
Published: Dec 24, 2024 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func UnwrapFromSingleQuotes

func UnwrapFromSingleQuotes(inStr string) string

UnwrapFromSingleQuotes the reverse of WrapInSingleQuotes but also allows non-single quoted strings

func WrapInSingleQuotes

func WrapInSingleQuotes(inStr string) string

WrapInSingleQuotes escapes single quotes and backslashs and adds single quotes around the string

Types

type ParamMarkerExpr

type ParamMarkerExpr struct {
	ValueExpr
	Offset    int
	Order     int
	InExecute bool

	// For "select ? as c from t group by c", the optimizer replaces the `c` in the by-clause to `group by ?`,
	// but this conversion conflicts with the original semantic. The original `group by c` means grouping by the column `c`,
	// while the converted `group by ?` means grouping by the `?-th` column in the select-list, for example, `group by 3` means
	// grouping the result by the 3rd column.
	// Use this flag to let the optimizer know whether `group by ?` is converted from this case and if it is, use this
	// marker as normal value instead of column index in the by-clause.
	UseAsValueInGbyByClause bool
}

ParamMarkerExpr expression holds a place for another expression. Used in parsing prepare statement.

func (*ParamMarkerExpr) Accept

func (n *ParamMarkerExpr) Accept(v ast.Visitor) (ast.Node, bool)

Accept implements Node Accept interface.

func (*ParamMarkerExpr) Format

func (*ParamMarkerExpr) Format(_ io.Writer)

Format the ExprNode into a Writer.

func (*ParamMarkerExpr) Restore

func (*ParamMarkerExpr) Restore(ctx *format.RestoreCtx) error

Restore implements Node interface.

func (*ParamMarkerExpr) SetOrder

func (n *ParamMarkerExpr) SetOrder(order int)

SetOrder implements the ast.ParamMarkerExpr interface.

type ValueExpr

type ValueExpr struct {
	ast.TexprNode
	types.Datum
	// contains filtered or unexported fields
}

ValueExpr is the simple value expression.

func (*ValueExpr) Accept

func (n *ValueExpr) Accept(v ast.Visitor) (ast.Node, bool)

Accept implements Node interface.

func (*ValueExpr) Format

func (n *ValueExpr) Format(w io.Writer)

Format the ExprNode into a Writer.

func (*ValueExpr) GetDatumString

func (n *ValueExpr) GetDatumString() string

GetDatumString implements the ast.ValueExpr interface.

func (*ValueExpr) GetProjectionOffset

func (n *ValueExpr) GetProjectionOffset() int

GetProjectionOffset returns ValueExpr.projectionOffset.

func (*ValueExpr) Restore

func (n *ValueExpr) Restore(ctx *format.RestoreCtx) error

Restore implements Node interface.

func (*ValueExpr) SetProjectionOffset

func (n *ValueExpr) SetProjectionOffset(offset int)

SetProjectionOffset sets ValueExpr.projectionOffset for logical plan builder.

func (*ValueExpr) SetValue

func (n *ValueExpr) SetValue(res any)

SetValue implements interface of ast.ValueExpr.

Jump to

Keyboard shortcuts

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