HINT 关键字

关键字 flag 使用场景 含义 例子
[HINT_LOCAL] [1] 分布式集群环境下,仅获取当前服务器的数据的计算结果。 添加该关键字后,仅获取在本地所有节点数据的查询结果。 select [HINT_LOCAL] sum(*) from pt
[HINT_HASH] [32] 搭配 group by 语句使用。 group by 分组默认优先采用哈希算法。 select [HINT_HASH] count(*) from t group by sym
[HINT_SNAPSHOT] [64] 使用 registerSnapshotEngine 注册快照引擎后,查询时需指定该关键字。 从分布式表的快照引擎中查询数据。 select [HINT_SNAPSHOT] * from loadTable(dbName,tableName)
[HINT_KEEPORDER] [128] 搭配 context by 关键字使用。 添加该关键字后,context by 分组后计算的输出结果顺序将和输入保持一致。 select [HINT_KEEPORDER] cumsu(vol) from t context by date, sym
[HINT_SEQ] [512] 内存资源紧缺时,添加该关键字使分区查询串行执行,节约并发的资源开销。 添加该关键字后,SQL 语句将在分区间串行执行。 timer select [HINT_SEQ] avg(vol) from t
[HINT_NOMERGE] [1024] 对于无需返回查询结果的中间步骤,可以通过省略查询的合并步骤,提升计算性能。 添加该关键字后,map 的查询结果不再汇总成一张内存表返回给客户端,而是直接返回分区表的句柄。 select [HINT_NOMERGE] price from pt context by ticker
[HINT_PRELOAD] [4096] 搭配 where 子句使用。 仅 TSDB 引擎支持该关键字。添加后,where 语句进行条件过滤前,会先将所有数据列加载到内存后再进行过滤。 select [HINT_PRELOAD] sum(price) from t where volume > 100000
[HINT_EXPLAIN] [32768] 用于 SQL 查询性能调优,详见 [HINT_EXPLAIN]。 添加该关键字后,系统将打印 SQL 语句的执行过程,便于 SQL 查询中实时监测查询的速度和执行的顺序。 select [HINT_EXPLAIN] * from tb where id > 20
[HINT_SORT] [524288] 搭配 group by 语句使用。 添加该关键字后,group by 分组时将采用排序算法进行。 select [HINT_SORT] avg(price) from trades group by sym
[HINT_VECTORIZED] [4194304] 搭配 group by 语句使用。 添加该关键字后,group by 分组时将采用向量化运算(vectorization)。 select [HINT_VECTORIZED] sum(price) from trades group by sym