Commit Graph

122 Commits

Author SHA1 Message Date
2890a8f62c executor: fix get var expr when session var is hex literal (#23241) 2021-03-17 15:02:55 +08:00
46fa162889 expression: do not report error when got unknown locale (#21818)
Signed-off-by: lzmhhh123 <lzmhhh123@gmail.com>
2020-12-17 13:44:05 +08:00
28c9e9290b *: gocritic fixes for commentFormatting (#21578) 2020-12-09 12:03:17 +08:00
ba60cf5a69 charset: implement utf8_unicode_ci and utf8mb4_unicode_ci collation (#18776) 2020-08-27 23:20:48 +08:00
bca31eaf62 *: refine the behavior of StrToInt and StrToFloat and support convert JSON to date, time and timestamp (#17902)
Signed-off-by: wjhuang2016 <huangwenjun1997@gmail.com>
2020-06-22 11:59:24 +08:00
027105ff1b expression: fix the wrong behavior of char function (#17598)
Signed-off-by: wjhuang2016 <huangwenjun1997@gmail.com>
2020-06-19 12:11:54 +08:00
d823deb583 expression: fix case-sensitive problem for function INSTR and LOCATE (#16792) 2020-05-09 18:00:05 +08:00
25580ea5f4 *: Use a function to get the ONE, ZERO and NULL and fix the clone. (#16512) 2020-04-17 19:11:52 +08:00
c561d5aa99 *: remove useless conversions and omit some types (#16262) 2020-04-10 00:23:06 +08:00
30e2bdcc52 *: remove some debug print in test files (#14977) 2020-02-28 12:52:59 +08:00
568cc224f7 expression: add builtin function WEIGHT_STRING() (#14792)
Add builtin-function WEIGHT_STRING(). MySQL manual described most of its behavior except:

If the input str is of numeric types, WEIGHT_STRING() in MySQL returns NULL, so does this implementation.
If the input str is of other types rather than string or numeric, the result of WEIGHT_STRING() in MySQL is not cleared. I simply evaluated the input as string.
2020-02-28 01:52:19 +08:00
f4d1b5ec9f expression: fix lower()/upper() doesn't work if string contains utf8 char. (#14667) 2020-02-07 16:02:33 +08:00
d006443194 type: encapsulate Time API (#14288) 2019-12-31 12:41:09 +08:00
78269d1bdd expression: rename some string expression functions (#13971) 2019-12-09 23:27:25 +08:00
a1dc0477a5 types: add error code for package types (#13300) 2019-11-26 19:45:14 +08:00
5d5497bfeb expression: speed up unit tests under the expression package (#12887) 2019-10-23 03:56:31 -05:00
62f1a54680 expression: remove row-vec convertor and introduce Vectorized() to check if an expression supports vectorized evaluation explicitly (#11884) 2019-08-27 20:16:35 +08:00
5e54680ca3 expression: make baseBuiltinFunc support converting from row-based evaluation to vectorized evaluation 2019-08-14 15:02:44 +08:00
5f9fe27a14 expression: the quote function should treat null expr as NULL… (#11592) 2019-08-05 19:05:37 +08:00
ff0132ff34 expression, parser: add function octet_length support (#11451) 2019-07-26 14:21:15 +08:00
593fb7def5 expression: add max_allowed_packet check in concat/concat_ws (#11137) 2019-07-16 15:56:51 +08:00
a090e6be29 Function INSERT should be NULL if any argument is NULL (#11237) 2019-07-15 11:33:06 +08:00
37c128b64f expression: set correct return field type of builtin CONVERT() (#9305) 2019-03-31 15:11:20 +08:00
6398788f6b expression: function format incompatible (#9182) 2019-01-31 16:39:21 +08:00
ec833bc4d2 *: fix some lints produced by golangci-lint (#8999) 2019-01-16 16:44:49 +08:00
477e252b35 expression: handle empty input and improve compatibility for format (#8797) 2019-01-02 14:13:08 +08:00
32b1dbd8d5 *: rename "github.com/pkg/errors" to "github.com/pingcap/errors" (#8136)
We import "github.com/pkg/errors" in the code, and actually put
the "github.com/pingcap/errors" there in the vendor path.
That's a dirty hack, and prevent the introduce of Go module.
2018-11-01 16:09:07 +08:00
9ec7515743 *: Add few error checks in tests, clean error messages and fix a misspell (#8101) 2018-10-31 18:50:43 +08:00
89dda9d9a8 *: move parser to a separate repository (#8036) 2018-10-25 11:12:10 +08:00
cb03f2bec1 move from juju/errors to pkg/errors (#7151) 2018-09-12 15:42:20 +08:00
c625c27239 expression: check max_allowed_packet constraint for function insert (#7502) 2018-08-29 13:52:15 +08:00
5754f624c9 expression: fix builtin 'CharLength' for binary string input (#7410) 2018-08-20 12:08:23 +08:00
H
2fbd5e7a70 expression: handle max_allowed_packet warnings for repeat function. (#7181) 2018-08-17 23:39:47 +08:00
4624785b37 expression: handle max_allowed_packet warnings for from_base64 function. (#7409) 2018-08-17 23:12:37 +08:00
6e7d75299d test: refine test (#7414) 2018-08-16 17:05:59 +08:00
016006f5c5 expression: handle max_allowed_packet warnings for to_base64 function. (#7266) 2018-08-15 10:49:20 +08:00
6e33d2e3b7 expression: fix behavior for builtin 'LTrim', 'RTrim' and 'Trim' (#7291) 2018-08-07 15:07:02 +08:00
H
6287b24f43 expression: handle max_allowed_packet warnings for space function. (#7210) 2018-08-02 12:57:06 +08:00
c38f567645 expression: handle max_allowed_packet warnings for pad functions (#7171) 2018-07-31 15:12:31 +08:00
06021c7cfe remove types.Row interface (#7170) 2018-07-27 13:45:03 +08:00
390e08bb87 expression: fix the wrong result of builtin function CONCAT_WS (#6762) 2018-06-12 19:54:40 +08:00
faeaccc35e executor:Improve the aesthetics of code review (#6138) 2018-03-26 22:19:49 +08:00
4e1a114e68 *: move package context to sessionctx (#5890) 2018-02-22 18:03:38 +08:00
62433663e5 util/types: change types path (#5007)
* util/types: change types path
2017-11-04 10:37:14 -05:00
27eedda835 expression: support 'using binary' (#4687) 2017-10-26 16:14:40 +08:00
64bc8cb6cb expression: remove "self" field in "baseBuiltinFunc" completely (#4766)
* expression: remove "self" field in "baseBuiltinFunc" completely

* address comment
2017-10-13 04:55:25 -05:00
60626912a7 expression, plan: remove "foldable" from "baseBuiltinFunc" (#4759) 2017-10-12 04:03:54 -05:00
3f4bdf6150 expression: rewrite unit test for Minus and Plus (#4691)
* expression: rewrite unit test for Minus and Plus

* move code
2017-09-30 11:47:26 +08:00
ebfcd7d90a expression: rewrite builtin function: CONVERT (#4417) 2017-09-08 11:08:39 +08:00
48c0ecae1c expression: rewrite builtin function: FIELD (#4419) 2017-09-07 20:13:09 +08:00