package
9.0.0-alpha+incompatible
Repository: https://github.com/pingcap/tidb.git
Documentation: pkg.go.dev

# Packages

# Functions

AddDate fix gap between mysql and golang api When we execute select date_add('2018-01-31',interval 1 month) in mysql we got 2018-02-28 but in tidb we got 2018-03-03.
AddDuration adds time.Duration a and b if no overflow, otherwise returns error.
AddInt64 adds int64 a and b if no overflow, otherwise returns error.
AddInteger adds uint64 a and int64 b and returns uint64 if no overflow error.
AddUint64 adds uint64 a and b if no overflow, else returns error.
AdjustYear is used for adjusting year and checking its validation.
AggFieldType aggregates field types for a multi-argument function like `IF`, `IFNULL`, `COALESCE` whose return type is determined by the arguments' FieldTypes.
AggregateEvalType aggregates arguments' EvalType of a multi-argument function.
ChangeReverseResultByUpperLowerBound is for expression's reverse evaluation.
CheckFsp checks whether fsp is in valid range.
CheckModifyTypeCompatible checks whether changes column type to another is compatible and can be changed.
CheckVectorDimValid checks if the vector's dimension is valid.
CloneRow deep copies a Datum slice.
CompareBinaryJSON compares two binary json objects.
CompareInt return an integer comparing the integer x to y with signed or unsigned.
CompareString returns an integer comparing the string x to y with the specified collation and length.
ComputePlus computes the result of a+b.
ContainsBinaryJSON check whether JSON document contains specific target according the following rules: 1) object contains a target object if and only if every key is contained in source object and the value associated with the target key is contained in the value associated with the source key; 2) array contains a target nonarray if and only if the target is contained in some element of the array; 3) array contains a target array if and only if every element is contained in some element of the array; 4) scalar contains a target scalar if and only if they are comparable and are equal;.
ConvertBetweenCharAndVarchar is that Column type conversion between varchar to char need reorganization because 1.
ConvertDatumToDecimal converts datum to decimal.
ConvertDecimalToUint converts a decimal to a uint by converting it to a string first to avoid float overflow (#10181).
ConvertFloatToInt converts a float64 value to a int value.
ConvertFloatToUint converts a float value to an uint value.
ConvertIntToInt converts an int value to another int value of different precision.
ConvertIntToUint converts an int value to an uint value.
ConvertJSONToDecimal casts JSON into decimal.
ConvertJSONToFloat casts JSON into float64.
ConvertJSONToInt casts JSON into int by type.
ConvertJSONToInt64 casts JSON into int64.
ConvertUintToInt converts an uint value to an int value.
ConvertUintToUint converts an uint value to another uint value of different precision.
CreateBinaryJSON creates a BinaryJSON from interface.
CreateBinaryJSONWithCheck creates a BinaryJSON from interface with error check.
CreateVectorFloat32 creates a VectorFloat32.
CurrentTime returns current time with type tp.
DateDiff calculates number of days between two days.
DateFSP gets fsp from date string.
DateTimeIsOverflow returns if this date is overflow.
DatumsContainNull return true if any value is null.
DatumsToString converts several datums to formatted string.
DatumsToStrNoErr converts some datums to a formatted string.
DecimalAdd adds two decimals, sets the result to 'to'.
DecimalBinSize returns the size of array to hold a binary representation of a decimal.
DecimalDiv does division of two decimals.
DecimalLength2Precision gets the precision.
DecimalMod does modulus of two decimals.
DecimalMul multiplies two decimals.
DecimalNeg reverses decimal's sign.
DecimalPeak returns the length of the encoded decimal.
DecimalSub subs one decimal from another, sets the result to 'to'.
DefaultCharsetForType returns the default charset/collation for mysql type.
DefaultTypeForValue returns the default FieldType for the value.
DivInt64 divides int64 a with b, returns int64 if no overflow error.
DivIntWithUint divides int64 a with uint64 b, returns uint64 if no overflow error.
DivUintWithInt divides uint64 a with int64 b, returns uint64 if no overflow error.
EOFAsNil filtrates errors, If err is equal to io.EOF returns nil.
EstimatedMemUsage returns the estimated bytes consumed of a one-dimensional or two-dimensional datum array.
ExtractDatetimeNum extracts time value number from datetime unit and format.
ExtractDurationNum extracts duration value number from duration unit and format.
ExtractDurationValue extract the value from format to Duration.
FormatIntWidthN uses to format int with width.
FromDate makes a internal time representation from the given date.
FromDateChecked makes a internal time representation from the given date with field overflow check.
FromGoTime translates time.Time to mysql time internal representation.
GetFormatType checks the type(Duration, Date or Datetime) of a format string.
GetFracIndex finds the last '.' for get fracStr, index = -1 means fracStr not found.
GetFsp gets the fsp of a string.
GetLastDay returns the last day of the month.
GetMaxFloat gets the max float for given flen and decimal.
GetMaxValue returns the max value datum for each type.
GetMinValue returns the min value datum for each type.
GetTimezone parses the trailing timezone information of a given time string literal.
InferParamTypeFromDatum is used for plan cache to infer the type of a parameter from its datum.
InferParamTypeFromUnderlyingValue is used for plan cache to infer the type of a parameter from its underlying value.
InitVectorFloat32 initializes a vector with the given dimension.
IntegerSignedLowerBound indicates the min int64 values of different mysql types.
IntegerSignedUpperBound indicates the max int64 values of different mysql types.
IntegerUnsignedUpperBound indicates the max uint64 values of different mysql types.
InvOp2 returns an invalid operation error.
IsBinaryStr returns a boolean indicating whether the field type is a binary string type.
IsClockUnit returns true when unit is interval unit with hour, minute, second or microsecond.
IsDateFormat returns true when the specified time format could contain only date.
IsDateUnit returns true when unit is interval unit with year, quarter, month, week or day.
IsMicrosecondUnit returns true when unit is interval unit with microsecond.
IsNonBinaryStr returns a boolean indicating whether the field type is a non-binary string type.
IsString returns a boolean indicating whether the field type is a string type.
IsStringKind returns a boolean indicating whether the tp is a string type.
IsTemporalWithDate returns a boolean indicating whether the tp is time type with date.
IsTypeBit returns a boolean indicating whether the tp is bit type.
IsTypeFloat indicates whether the type is TypeFloat.
IsTypeFractionable returns a boolean indicating whether the tp can has time fraction.
IsTypeInteger returns a boolean indicating whether the tp is integer type.
IsTypeNumeric returns a boolean indicating whether the tp is numeric type.
IsTypePrefixable returns a boolean indicating whether an index on a column with the tp can be defined with a prefix.
IsTypeTemporal checks if a type is a temporal type.
IsTypeTime returns a boolean indicating whether the tp is time type like datetime, date or timestamp.
IsTypeUnspecified returns a boolean indicating whether the tp is the Unspecified type.
IsTypeVarchar returns a boolean indicating whether the tp is the varchar type like a varstring type or a varchar type.
IsVarcharTooBigFieldLength check if the varchar type column exceeds the maximum length limit.
KindStr converts kind to a string.
MakeDatums creates datum slice from interfaces.
MaxMySQLDuration returns Duration with maximum mysql time.
MaxValueDatum returns a datum represents max value.
MergeBinaryJSON merges multiple BinaryJSON into one according the following rules: 1) adjacent arrays are merged to a single array; 2) adjacent object are merged to a single object; 3) a scalar value is autowrapped as an array before merge; 4) an adjacent array and object are merged by autowrapping the object as an array.
MergePatchBinaryJSON implements RFC7396 https://datatracker.ietf.org/doc/html/rfc7396.
MinNotNullDatum returns a datum represents minimum not null value.
MulInt64 multiplies int64 a and b and returns int64 if no overflow error.
MulInteger multiplies uint64 a and int64 b, and returns uint64 if no overflow error.
MulUint64 multiplies uint64 a and b and returns uint64 if no overflow error.
MustCreateVectorFloat32 creates a VectorFloat32.
NeedRestoredData returns if a type needs restored data.
NewBinaryLiteralDatum creates a new BinaryLiteral Datum for a BinaryLiteral value.
NewBinaryLiteralFromUint creates a new BinaryLiteral instance by the given uint value in BitEndian.
NewBitLiteral parses bit string as BitLiteral type.
NewBytesDatum creates a new Datum from a byte slice.
NewCollateMysqlEnumDatum create a new MysqlEnum Datum for a Enum value with collation information.
NewCollationStringDatum creates a new Datum from a string with collation.
NewContext creates a new `Context`.
NewDatum creates a new Datum from an interface{}.
NewDecFromFloatForTest creates a MyDecimal from float, as it returns no error, it should only be used in test.
NewDecFromInt creates a MyDecimal from int.
NewDecFromStringForTest creates a MyDecimal from string, as it returns no error, it should only be used in test.
NewDecFromUint creates a MyDecimal from uint.
NewDecimalDatum creates a new Datum from a MyDecimal value.
NewDuration construct duration with time.
NewDurationDatum creates a new Datum from a Duration value.
NewFieldType returns a FieldType, with a type and other information about field type.
NewFieldTypeBuilder will allocate the builder on the heap.
NewFieldTypeWithCollation returns a FieldType, with a type and other information about field type.
NewFloat32Datum creates a new Datum from a float32 value.
NewFloat64Datum creates a new Datum from a float64 value.
NewHexLiteral parses hexadecimal string as HexLiteral type.
NewIntDatum creates a new Datum from an int64 value.
NewJSONDatum creates a new Datum from a BinaryJSON value.
NewMaxOrMinDec returns the max or min value decimal for given precision and fraction.
NewMysqlBitDatum creates a new MysqlBit Datum for a BinaryLiteral value.
NewMysqlEnumDatum creates a new MysqlEnum Datum for a Enum value.
NewMysqlSetDatum creates a new MysqlSet Datum for a Enum value.
NewStringDatum creates a new Datum from a string.
NewTime constructs time from core time, type and fsp.
NewTimeDatum creates a new Time from a Time value.
NewUintDatum creates a new Datum from an uint64 value.
NewVectorFloat32Datum creates a new Datum from a VectorFloat32 value.
NumberToDuration converts number to Duration.
OverlapsBinaryJSON is similar with ContainsBinaryJSON, but it checks the `OR` relationship.
ParseBinaryJSONFromString parses a json from string.
ParseBitStr parses bit string.
ParseDate is a helper function wrapping ParseTime with date type.
ParseDateFormat parses a formatted date string and returns separated components.
ParseDateFromNum is a helper function wrapping ParseTimeFromNum with date type.
ParseDatetime is a helper function wrapping ParseTime with datetime type and default fsp.
ParseDatetimeFromNum is a helper function wrapping ParseTimeFromNum with datetime type and default fsp.
ParseDuration parses the time form a formatted string with a fractional seconds part, returns the duration type Time value and bool to indicate whether the result is null.
ParseDurationValue parses time value from time unit and format.
ParseEnum creates a Enum with item name or value.
ParseEnumName creates a Enum with item name.
ParseEnumValue creates a Enum with special number.
ParseFrac parses the input string according to fsp, returns the microsecond, and also a bool value to indice overflow.
ParseHexStr parses hexadecimal string literal.
ParseJSONPathExpr parses a JSON path expression.
ParseSet creates a Set with name or value.
ParseSetName creates a Set with name.
ParseSetValue creates a Set with special number.
ParseTime parses a formatted string with type tp and specific fsp.
ParseTimeFromDecimal parses mysql time value from decimal.
ParseTimeFromFloat64 parses mysql time value from float64.
ParseTimeFromFloatString is similar to ParseTime, except that it's used to parse a float converted string.
ParseTimeFromInt64 parses mysql time value from int64.
ParseTimeFromNum parses a formatted int64, returns the value which type is tp.
ParseTimeFromYear parse a `YYYY` formed year to corresponded Datetime type.
ParseTimestamp is a helper function wrapping ParseTime with timestamp type and default fsp.
ParseTimestampFromNum is a helper function wrapping ParseTimeFromNum with timestamp type and default fsp.
ParseVectorFloat32 parses a string into a vector.
ParseYear parses a formatted string and returns a year number.
PeekBytesAsJSON trys to peek some bytes from b, until we can deserialize a JSON from those bytes.
PeekBytesAsVectorFloat32 trys to peek some bytes from b, until we can deserialize a VectorFloat32 from those bytes.
Precision2LengthNoTruncation gets the length.
ProduceDecWithSpecifiedTp produces a new decimal according to `flen` and `decimal`.
ProduceFloatWithSpecifiedTp produces a new float64 according to `flen` and `decimal`.
ProduceStrWithSpecifiedTp produces a new string according to `flen` and `chs`.
Round rounds the argument f to dec decimal places.
RoundFloat rounds float val to the nearest even integer value with float64 format, like MySQL Round function.
RoundFrac rounds fractional seconds precision with new fsp and returns a new one.
SetBinChsClnFlag sets charset, collation as 'binary' and adds binaryFlag to FieldType.
SetTypeFlag turns the flagItem on or off.
SortDatums sorts a slice of datum.
StrToDateTime converts str to MySQL DateTime.
StrToDuration converts str to Duration.
StrToFloat converts a string to a float64 at the best-effort.
StrToInt converts a string to an integer at the best-effort.
StrToUint converts a string to an unsigned integer at the best-effort.
SubDuration subtracts time.Duration a with b and returns time.Duration if no overflow error.
SubInt64 subtracts int64 a with b and returns int64 if no overflow error.
SubIntWithUint subtracts int64 a with uint64 b and returns uint64 if no overflow error.
SubUint64 subtracts uint64 a with b and returns uint64 if no overflow error.
SubUintWithInt subtracts uint64 a with int64 b and returns uint64 if no overflow error.
TimeFromDays Converts a day number to a date.
TimestampDiff returns t2 - t1 where t1 and t2 are date or datetime expressions.
ToString converts an interface to a string.
Truncate truncates the argument f to dec decimal places.
TruncateFloat tries to truncate f.
TruncateFloatToString is used to truncate float to string where dec is the number of digits after the decimal point.
TruncateFrac truncates fractional seconds precision with new fsp and returns a new one.
TruncateOverflowMySQLTime truncates d when it overflows, and returns ErrTruncatedWrongVal.
TryToFixFlenOfDatetime try to fix flen of Datetime for specific func or other field merge cases.
UnquoteString remove quotes in a string, including the quotes at the head and tail of string.
VecCompareII returns []int64 comparing the []int64 x to []int64 y.
VecCompareIU returns []int64 comparing the []int64 x to []uint64y.
VecCompareUI returns []int64 comparing the []uint64 x to []int64y.
VecCompareUU returns []int64 comparing the []uint64 x to []uint64 y.
ZeroCopyDeserializeVectorFloat32 deserializes the byte slice into a vector, without memory copy.

# Constants

Ceiling means rounding up.
Time format without fractional seconds precision.
const strings for ErrWrongValue.
const strings for ErrWrongValue.
DayHourMaxCnt is max parameters count 'DAYS HOURS' expr Format allowed.
DayIndex is index of 'YEARS-MONTHS DAYS HOURS:MINUTES:SECONDS.MICROSECONDS' expr Format.
DayMicrosecondMaxCnt is max parameters count 'DAYS HOURS:MINUTES:SECONDS.MICROSECONDS' expr Format allowed.
DayMinuteMaxCnt is max parameters count 'DAYS HOURS:MINUTES' expr Format allowed.
DaySecondMaxCnt is max parameters count 'DAYS HOURS:MINUTES:SECONDS' expr Format allowed.
DefaultFsp is the default digit of fractional seconds part.
DefaultStmtFlags is the default flags for statement context with the flag `FlagAllowNegativeToUnsigned` set.
EmptyDatumSize is the size of empty datum.
ErrorLength is error length for blob or text.
ETDatetime represents type DATETIME in evaluation.
ETDecimal represents type DECIMAL in evaluation.
ETDuration represents type DURATION in evaluation.
ETInt represents type INT in evaluation.
ETJson represents type JSON in evaluation.
ETReal represents type REAL in evaluation.
ETString represents type STRING in evaluation.
ETTimestamp represents type TIMESTAMP in evaluation.
ETVectorFloat32 represents type VectorFloat32 in evaluation.
FlagAllowNegativeToUnsigned indicates to allow the casting from negative to unsigned int.
FlagCastTimeToYearThroughConcat indicates to cast time to year through concatenation.
FlagIgnoreInvalidDateErr indicates to ignore the invalid-date error.
FlagIgnoreTruncateErr indicates to ignore the truncate error.
FlagIgnoreZeroDateErr indicates to ignore the zero-date error.
FlagIgnoreZeroInDateErr indicates to ignore the zero-in-date error.
FlagSkipASCIICheck indicates to skip the ASCII check when converting the value to an ASCII string.
FlagSkipUTF8Check indicates to skip the UTF8 check when converting the value to an UTF8MB3 string.
FlagSkipUTF8MB4Check indicates to skip the UTF8MB4 check when converting the value to an UTF8 string.
FlagTruncateAsWarning indicates to append the truncate error to warnings instead of returning it to user.
Floor means rounding down.
GoDurationDay is the gotime.Duration which equals to a Day.
GoDurationWeek is the gotime.Duration which equals to a Week.
HourIndex is index of 'YEARS-MONTHS DAYS HOURS:MINUTES:SECONDS.MICROSECONDS' expr Format.
HourMicrosecondMaxCnt is max parameters count 'HOURS:MINUTES:SECONDS.MICROSECONDS' expr Format allowed.
HourMinuteMaxCnt is max parameters count 'HOURS:MINUTES' expr Format allowed.
HourSecondMaxCnt is max parameters count 'HOURS:MINUTES:SECONDS' expr Format allowed.
'all': 1 if all paths exist within the document, 0 otherwise.
'one': 1 if at least one path exists within the document, 0 otherwise.
JSONLiteralFalse represents JSON false.
JSONLiteralNil represents JSON null.
JSONLiteralTrue represents JSON true.
JSONModifyInsert is for insert a new element into a JSON.
JSONModifyReplace is for replace an old elemList from a JSON.
JSONModifySet = JSONModifyInsert | JSONModifyReplace.
JSONTypeCodeArray indicates the JSON is an array.
JSONTypeCodeDate indicates the JSON is a opaque.
JSONTypeCodeDatetime indicates the JSON is a opaque.
JSONTypeCodeDuration indicates the JSON is a opaque.
JSONTypeCodeFloat64 indicates the JSON is a double float number.
JSONTypeCodeInt64 indicates the JSON is a signed integer.
JSONTypeCodeLiteral indicates the JSON is a literal.
JSONTypeCodeObject indicates the JSON is an object.
JSONTypeCodeOpaque indicates the JSON is a opaque.
JSONTypeCodeString indicates the JSON is a string.
JSONTypeCodeTimestamp indicates the JSON is a opaque.
JSONTypeCodeUint64 indicates the JSON is a unsigned integer.
Used for BIT / HEX literals.
Kind constants.
Kind constants.
Kind constants.
Kind constants.
Kind constants.
Kind constants.
Kind constants.
Used for BIT table column values.
Kind constants.
Kind constants.
Kind constants.
Kind constants.
Kind constants.
Kind constants.
Kind constants.
Kind constants.
Kind constants.
Kind constants.
Kind constants.
MaxDuration is the maximum for duration.
MaxFsp is the maximum digit of fractional seconds part.
MaxTime is the maximum for mysql time type.
MaxYear is the maximum for mysql year type.
MicrosecondIndex is index of 'YEARS-MONTHS DAYS HOURS:MINUTES:SECONDS.MICROSECONDS' expr Format.
MinFsp is the minimum digit of fractional seconds part.
MinTime is the minimum for mysql time type.
MinuteIndex is index of 'YEARS-MONTHS DAYS HOURS:MINUTES:SECONDS.MICROSECONDS' expr Format.
MinuteMicrosecondMaxCnt is max parameters count 'MINUTES:SECONDS.MICROSECONDS' expr Format allowed.
MinuteSecondMaxCnt is max parameters count 'MINUTES:SECONDS' expr Format allowed.
MinYear is the minimum for mysql year type.
Ceiling is not supported now.
Round up to the next integer if positive or down to the next integer if negative.
Truncate just truncates the decimal.
MonthIndex is index of 'YEARS-MONTHS DAYS HOURS:MINUTES:SECONDS.MICROSECONDS' expr Format.
MyDecimalStructSize is the struct size of MyDecimal.
SecondIndex is index of 'YEARS-MONTHS DAYS HOURS:MINUTES:SECONDS.MICROSECONDS' expr Format.
SecondMicrosecondMaxCnt is max parameters count 'SECONDS.MICROSECONDS' expr Format allowed.
StrictFlags is a flags with a fields unset and has the most strict behavior.
Time format without fractional seconds precision.
TimeFSPFormat is time format with fractional seconds precision.
TimeMaxHour is the max hour for mysql time type.
TimeMaxMinute is the max minute for mysql time type.
TimeMaxSecond is the max second for mysql time type.
TimeMaxValue is the maximum value for mysql time type.
TimeMaxValueSeconds is the maximum second value for mysql time type.
const strings for ErrWrongValue.
const strings for ErrWrongValue.
TimeValueCnt is parameters count 'YEARS-MONTHS DAYS HOURS:MINUTES:SECONDS.MICROSECONDS' expr Format.
UnspecifiedFsp is the unspecified fractional seconds part.
UnspecifiedLength is unspecified length.
UTCTimeFormat is used to parse and format gotime.
VarStorageLen indicates this column is a variable length column.
YearIndex is index of 'YEARS-MONTHS DAYS HOURS:MINUTES:SECONDS.MICROSECONDS' expr Format.
YearMonthMaxCnt is max parameters count 'YEARS-MONTHS' expr Format allowed.
ZeroDateStr is the string representation of a zero date.
ZeroDatetimeStr is the string representation of a zero datetime.

# Variables

BoundTimezone is the timezone for min and max timestamp.
DefaultStmtNoWarningContext is the context with default statement flags without any other special configuration.
EmptyName is to occupy the position in the name slice.
ErrBadNumber is return when parsing an invalid binary decimal number.
ErrCastAsSignedOverflow is returned when positive out-of-range integer, and convert to its negative complement.
ErrCastNegIntAsUnsigned is returned when a negative integer be casted to an unsigned int.
ErrDataTooLong is returned when converts a string value that is longer than field type length.
ErrDatetimeFunctionOverflow is returned when the calculation in datetime function cause overflow.
ErrDivByZero is return when do division by 0.
ErrDuplicatedValueInType is returned when enum column has duplicated value.
ErrIllegalValueForType is returned when value of type is illegal.
ErrIncorrectDatetimeValue is returned when the input value is in wrong format for datetime.
ErrInvalidDefault is returned when meet a invalid default value.
ErrInvalidFieldSize is returned when the precision of a column is out of range.
ErrInvalidJSONCharset means invalid JSON charset.
ErrInvalidJSONContainsPathType means invalid JSON contains path type.
ErrInvalidJSONData means invalid JSON data.
ErrInvalidJSONPath means invalid JSON path.
ErrInvalidJSONPathArrayCell means invalid JSON path for an array cell.
ErrInvalidJSONPathMultipleSelection means invalid JSON path that contain wildcard characters or range selection.
ErrInvalidJSONText means invalid JSON text.
ErrInvalidJSONTextInParam means invalid JSON text in arguments.
ErrInvalidJSONType means invalid JSON type.
ErrInvalidWeekModeFormat is returned when the week mode is wrong.
ErrInvalidYear is returned when the input value is not a valid year.
ErrInvalidYearFormat is returned when the input is not a valid year format.
ErrJSONBadOneOrAllArg is returned when the one_or_all argument isn't 'one' or 'all'.
ErrJSONDocumentNULLKey means that json's key is null.
ErrJSONDocumentTooDeep means that json's depth is too deep.
ErrJSONObjectKeyTooLong means JSON object with key length >= 65536 which is not yet supported.
ErrJSONVacuousPath is returned for path expressions that are not allowed in that context.
ErrMBiggerThanD is returned when precision less than the scale.
ErrOverflow is returned when data is out of range for a field type.
ErrPartitionColumnStatsMissing is returned when the partition-level column stats is missing and the build global-level stats fails.
ErrPartitionStatsMissing is returned when the partition-level stats is missing and the build global-level stats fails.
ErrSyntax is returned when the syntax is not allowed.
ErrTooBigDisplayWidth is return when display width out of range for column.
ErrTooBigFieldLength is return when column length too big for column.
ErrTooBigPrecision is returned when type DECIMAL/NUMERIC or DATETIME precision is bigger than mysql.MaxDecimalWidth or types.MaxFsp.
ErrTooBigScale is returned when type DECIMAL/NUMERIC scale is bigger than mysql.MaxDecimalScale.
ErrTooBigSet is returned when too many strings for column.
ErrTruncated is returned when data has been truncated during conversion.
ErrTruncatedWrongVal is returned when data has been truncated during conversion.
ErrUnsupportedSecondArgumentType means unsupported second argument type in json_objectagg.
ErrWarnDataOutOfRange is returned when the value in a numeric column that is outside the permissible range of the column data type.
ErrWrongFieldSpec is returned when the column specifier incorrect.
ErrWrongValue is returned when the input value is in wrong format.
ErrWrongValue2 is returned when the input value is in wrong format.
ErrWrongValueForType is returned when the input value is in wrong format for function.
ExplainFormatBinary prints the proto for binary plan.
ExplainFormatBrief is the same as ExplainFormatRow, but it ignores explain ID suffix.
ExplainFormatCostTrace prints the cost and cost formula of each operator.
ExplainFormatDOT indicates that using DotGraph to explain.
ExplainFormatHint is to show hint information.
ExplainFormatJSON displays the information in JSON format.
ExplainFormatPlanCache prints the reason why can't use non-prepared plan cache by warning.
ExplainFormatROW presents the output in tabular format.
ExplainFormats stores the valid formats for explain statement, used by validator.
ExplainFormatTiDBJSON warp the default result in JSON format.
ExplainFormatTraditional is the same as ExplainFormatROW.
ExplainFormatTrueCardCost indicates the optimizer to use true cardinality to calculate the cost.
ExplainFormatVerbose display additional information regarding the plan.
Hash64ForDatum is a hash function for initialized by codec package.
IsTypeBlob returns a boolean indicating whether the tp is a blob type.
IsTypeChar returns a boolean indicating whether the tp is the char type like a string type or a varchar type.
IsTypeVector returns whether tp is a vector type.
MaxDatetime is the maximum for mysql datetime type.
MaxTimestamp is the maximum for mysql timestamp type.
MinDatetime is the minimum for Golang Time type.
MinTimestamp is the minimum for mysql timestamp type.
MonthNames lists names of months, which are used in builtin time function `monthname`.
StrictContext is the most strict context which returns every error it meets this context should never append warnings However, the implementation of `types` may still append some warnings.
TypeStr converts tp to a string.
TypeToStr converts a field to a string.
WeekdayNames lists names of weekdays, which are used in builtin time function `dayname`.
ZeroBinaryLiteral is a BinaryLiteral literal with zero value.
ZeroCoreTime is the zero value for TimeInternal type.
ZeroDate is the zero value for date Time.
ZeroDatetime is the zero value for datetime Time.
ZeroDuration is the zero value for Duration type.
ZeroCoreTime is the zero value for Time type.
ZeroTimestamp is the zero value for timestamp Time.
ZeroVectorFloat32 is a zero value of VectorFloat32.

# Structs

BinaryJSON represents a binary encoded JSON object.
Context provides the information when converting between different types.
Datum is a data box holds different kind of data.
Duration is the type for MySQL TIME type.
Enum is for MySQL enum type.
FieldName records the names used for mysql protocol.
FieldTypeBuilder constructor.
JSONPathExpression is for JSON path expression.
JSONPathExpressionCache is a cache for JSONPathExpression.
MyDecimal represents a decimal value.
Opaque represents a raw binary type.
Set is for MySQL Set type.
Time is the struct for handling datetime, timestamp and date.
VectorFloat32 represents a vector of float32.

# Type aliases

BinaryJSONWalkFunc is used as callback function for BinaryJSON.Walk.
BinaryLiteral is the internal type for storing bit / hex literal type.
BitLiteral is the bit literal type.
CoreTime is the internal struct type for Time.
EvalType indicates the specified types that arguments and result of a built-in function should be.
FieldType records field type information.
Flags indicate how to handle the conversion of a value.
HexLiteral is the hex literal type.
JSONModifyType is for modify a JSON.
JSONTypeCode indicates JSON type.
NameSlice is the slice of the *fieldName.
RoundingType is used to indicate the rounding type for reversing evaluation.
RoundMode is the type for round mode.