From 96b87ac7248bce88981f5230d8b832a7f8c3fbfd Mon Sep 17 00:00:00 2001 From: Ti Chi Robot Date: Mon, 27 Sep 2021 20:00:47 +0800 Subject: [PATCH] Add the hint LIMIT_TO_COP() (#7202) (#7210) --- optimizer-hints.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/optimizer-hints.md b/optimizer-hints.md index cc9b83c5fd9e..bc42acbf9cc2 100644 --- a/optimizer-hints.md +++ b/optimizer-hints.md @@ -182,6 +182,16 @@ SELECT /*+ IGNORE_INDEX(t1, idx1, idx2) */ * FROM t t1; SELECT /*+ AGG_TO_COP() */ sum(t1.a) FROM t t1; ``` +### LIMIT_TO_COP() + +`LIMIT_TO_COP()` 提示优化器将指定查询块中的 `Limit` 和 `TopN` 算子下推到 coprocessor。优化器没有下推 `Limit` 或者 `TopN` 算子时建议尝试使用该提示。例如: + +{{< copyable "sql" >}} + +```sql +SELECT /*+ LIMIT_TO_COP() */ * FROM t WHERE a = 1 AND b > 10 ORDER BY c LIMIT 1; +``` + ### READ_FROM_STORAGE(TIFLASH[t1_name [, tl_name ...]], TIKV[t2_name [, tl_name ...]]) `READ_FROM_STORAGE(TIFLASH[t1_name [, tl_name ...]], TIKV[t2_name [, tl_name ...]])` 提示优化器从指定的存储引擎来读取指定的表,目前支持的存储引擎参数有 `TIKV` 和 `TIFLASH`。如果为表指定了别名,就只能使用表的别名作为 `READ_FROM_STORAGE()` 的参数;如果没有指定别名,则用表的本名作为其参数。例如: