TiDB v5.2 中文手册优化器会将被绑定的 SQL 进行 “标准化” 处理,然后存储到系统表中。在处理 SQL 查询时,只要 “标准化” 后的 SQL 和系统表中某个被绑 定的 SQL 语句一致,并且系统变量 tidb_use_plan_baselines 的值为 on(其默认值为 on),即可使用相应的优 化器 Hint。如果存在多个可匹配的执行计划,优化器会从中选择代价最小的一个进行绑定。 标准化:把 SQL 中的常量变成变 中的常量变成变量参数,对空格和换行符等做标准化处理,并对查询引用到的表显式指定数 据库。例如: select * from t where a > 1 -- 以上语句标准化后如下: select * from test . t where a > ? 注意: 在进行标准化的时候,被逗号 , 连接起来的多个常量会被标准化为 ... 而不是 ?。 例如: select * from t limit 10 from t limit 10, 20 select * from t where a in (1) select * from t where a in (1,2,3) 494 -- 以上语句标准化后如下: select * from test . t limit ? select * from test . t limit ... select * from test . t where0 码力 | 2259 页 | 48.16 MB | 1 年前3
TiDB v5.1 中文手册优化器会将被绑定的 SQL 进行 “标准化” 处理,然后存储到系统表中。在处理 SQL 查询时,只要 “标准化” 后的 SQL 和系统表中某个被绑 定的 SQL 语句一致,并且系统变量 tidb_use_plan_baselines 的值为 on(其默认值为 on),即可使用相应的优 化器 Hint。如果存在多个可匹配的执行计划,优化器会从中选择代价最小的一个进行绑定。 标准化:把 SQL 中的常量变成变 中的常量变成变量参数,对空格和换行符等做标准化处理,并对查询引用到的表显式指定数 据库。例如: select * from t where a > 1 -- 以上语句标准化后如下: select * from test . t where a > ? 注意: 在进行标准化的时候,被逗号 , 连接起来的多个常量会被标准化为 ... 而不是 ?。 例如: select * from t limit 10 * from t limit 10, 20 select * from t where a in (1) select * from t where a in (1,2,3) -- 以上语句标准化后如下: select * from test . t limit ? select * from test . t limit ... select * from test . t where0 码力 | 2189 页 | 47.96 MB | 1 年前3
TiDB v5.3 中文手册优化器会将被绑定的 SQL 进行 “标准化” 处理,然后存储到系统表中。在处理 SQL 查询时,只要 “标准化” 后的 SQL 和系统表中某个被绑 定的 SQL 语句一致,并且系统变量 tidb_use_plan_baselines 的值为 on(其默认值为 on),即可使用相应的优 化器 Hint。如果存在多个可匹配的执行计划,优化器会从中选择代价最小的一个进行绑定。 标准化:把 SQL 中的常量变成变 中的常量变成变量参数,对空格和换行符等做标准化处理,并对查询引用到的表显式指定数 据库。例如: select * from t where a > 1 -- 以上语句标准化后如下: select * from test . t where a > ? 注意: 在进行标准化的时候,被逗号 , 连接起来的多个常量会被标准化为 ... 而不是 ?。 例如: select * from t limit 10 * from t limit 10, 20 select * from t where a in (1) select * from t where a in (1,2,3) -- 以上语句标准化后如下: select * from test . t limit ? select * from test . t limit ... select * from test . t where0 码力 | 2374 页 | 49.52 MB | 1 年前3
TiDB v5.4 中文手册优化器会将被绑定的 SQL 进行 “标准化” 处理,然后存储到系统表中。在处理 SQL 查询时,只要 “标准化” 后的 SQL 和系统表中某个被绑 定的 SQL 语句一致,并且系统变量tidb_use_plan_baselines 的值为 on(其默认值为 on),即可使用相应的优 化器 Hint。如果存在多个可匹配的执行计划,优化器会从中选择代价最小的一个进行绑定。 标准化:把 SQL 中的常量变成变 中的常量变成变量参数,对空格和换行符等做标准化处理,并对查询引用到的表显式指定数 据库。例如: select * from t where a > 1 -- 以上语句标准化后如下: select * from test . t where a > ? 注意: 在进行标准化的时候,被逗号 , 连接起来的多个常量会被标准化为 ... 而不是 ?。 例如: select * from t limit 10 * from t limit 10, 20 select * from t where a in (1) select * from t where a in (1,2,3) -- 以上语句标准化后如下: select * from test . t limit ? select * from test . t limit ... 591 select * from test . t0 码力 | 2852 页 | 52.59 MB | 1 年前3
TiDB v6.1 中文手册Jar • Java: 17 Dependencies 148 • Spring Web • Spring Data JPA • MySQL Driver 注意: 尽管 SQL 相对标准化,但每个数据库供应商都使用 ANSI SQL 定义语法的子集和超集。这被称 为数据库的方言。Hibernate 通过其 org.hibernate.dialect.Dialect 类和每个数据库供应商的各种子类 优化器会将被绑定的 SQL 进行 “标准化” 处理,然后存储到系统表中。在处理 SQL 查询时,只要 “标准化” 后的 SQL 和系统表中某个被绑 定的 SQL 语句一致,并且系统变量tidb_use_plan_baselines 的值为 on(其默认值为 on),即可使用相应的优 化器 Hint。如果存在多个可匹配的执行计划,优化器会从中选择代价最小的一个进行绑定。 标准化:把 SQL 中的常量变成变 中的常量变成变量参数,对空格和换行符等做标准化处理,并对查询引用到的表显式指定数 据库。例如: 1026 SELECT * FROM t WHERE a > 1 -- 以上语句标准化后如下: SELECT * FROM test . t WHERE a > ? 注意: 在进行标准化的时候,被逗号 , 连接起来的多个常量会被标准化为 ... 而不是 ?。 例如: SELECT * FROM t limit0 码力 | 3572 页 | 84.36 MB | 1 年前3
TiDB v7.1 中文手册优化器会将被绑定的 SQL 进行 “标准化” 处理,然后存储到系统表中。在处理 SQL 查询时,只要 “标准化” 后的 SQL 和系统表中某个被绑 定的 SQL 语句一致,并且系统变量tidb_use_plan_baselines 的值为 on(其默认值为 on),即可使用相应的优 化器 Hint。如果存在多个可匹配的执行计划,优化器会从中选择代价最小的一个进行绑定。 标准化:把 SQL 中的常量变成变 中的常量变成变量参数,对空格和换行符等做标准化处理,并对查询引用到的表显式指定数 据库。例如: SELECT * FROM t WHERE a > 1 -- 以上语句标准化后如下: SELECT * FROM test . t WHERE a > ? 注意: 在进行标准化的时候,被逗号 , 连接起来的多个常量会被标准化为 ... 而不是 ?。 例如: SELECT * FROM t limit 10 FROM t limit 10, 20 SELECT * FROM t WHERE a IN (1) 1294 SELECT * FROM t WHERE a IN (1,2,3) -- 以上语句标准化后如下: SELECT * FROM test . t limit ? SELECT * FROM test . t limit ... SELECT * FROM test . t WHERE0 码力 | 4369 页 | 98.92 MB | 1 年前3
TiDB v6.5 中文手册优化器会将被绑定的 SQL 进行 “标准化” 处理,然后存储到系统表中。在处理 SQL 查询时,只要 “标准化” 后的 SQL 和系统表中某个被绑 定的 SQL 语句一致,并且系统变量tidb_use_plan_baselines 的值为 on(其默认值为 on),即可使用相应的优 化器 Hint。如果存在多个可匹配的执行计划,优化器会从中选择代价最小的一个进行绑定。 标准化:把 SQL 中的常量变成变 中的常量变成变量参数,对空格和换行符等做标准化处理,并对查询引用到的表显式指定数 据库。例如: SELECT * FROM t WHERE a > 1 -- 以上语句标准化后如下: SELECT * FROM test . t WHERE a > ? 注意: 在进行标准化的时候,被逗号 , 连接起来的多个常量会被标准化为 ... 而不是 ?。 例如: SELECT * FROM t limit 10 * FROM t limit 10, 20 SELECT * FROM t WHERE a IN (1) SELECT * FROM t WHERE a IN (1,2,3) -- 以上语句标准化后如下: SELECT * FROM test . t limit ? SELECT * FROM test . t limit ... 1208 SELECT * FROM test . t0 码力 | 4049 页 | 94.00 MB | 1 年前3
TiDB v8.5 中文手册优化器会将被绑定的 SQL 进行 “标准化” 处理,然后存储到系统表中。在处理 SQL 查询时,只要 “标准化” 后的 SQL 和系统表中某个被绑 定的 SQL 语句一致,并且系统变量tidb_use_plan_baselines 的值为 on(其默认值为 on),即可使用相应的优 化器 Hint。如果存在多个可匹配的执行计划,优化器会从中选择代价最小的一个进行绑定。 1705 标准化:把 SQL 中的常量 中的常量变成变量参数,对空格和换行符等做标准化处理,并对查询引用到的表显式指定数 据库。例如: SELECT * FROM t WHERE a > 1 -- 以上语句标准化后如下: SELECT * FROM test . t WHERE a > ? 注意: 在进行标准化的时候,IN 表达式中的 ? 会被标准化为 ...。 例如: SELECT * FROM t WHERE a IN (1) SELECT * FROM t WHERE a IN (1,2,3) -- 以上语句标准化后如下: SELECT * FROM test . t WHERE a IN ( ... ) SELECT * FROM test . t WHERE a IN ( ... ) 不同长度的 IN 表达式被标准化后,会被识别为同一条语句,因此只需要创建一条绑定,对这 些表达式同时生效。 例如: CREATE0 码力 | 5095 页 | 104.54 MB | 10 月前3
TiDB v8.0 中文手册优化器会将被绑定的 SQL 进行 “标准化” 处理,然后存储到系统表中。在处理 SQL 查询时,只要 “标准化” 后的 SQL 和系统表中某个被绑 定的 SQL 语句一致,并且系统变量tidb_use_plan_baselines 的值为 on(其默认值为 on),即可使用相应的优 化器 Hint。如果存在多个可匹配的执行计划,优化器会从中选择代价最小的一个进行绑定。 标准化:把 SQL 中的常量变成变 中的常量变成变量参数,对空格和换行符等做标准化处理,并对查询引用到的表显式指定数 据库。例如: SELECT * FROM t WHERE a > 1 -- 以上语句标准化后如下: SELECT * FROM test . t WHERE a > ? 注意: 在进行标准化的时候,IN 表达式中的 ? 会被标准化为 ...。 例如: 1354 SELECT * FROM t WHERE a IN (1) SELECT * FROM t WHERE a IN (1,2,3) -- 以上语句标准化后如下: SELECT * FROM test . t WHERE a IN ( ... ) SELECT * FROM test . t WHERE a IN ( ... ) 不同长度的 IN 表达式被标准化后,会被识别为同一条语句,因此只需要创建一条绑定,对这 些表达式同时生效。 例如: CREATE0 码力 | 4805 页 | 101.28 MB | 1 年前3
TiDB v7.5 中文手册优化器会将被绑定的 SQL 进行 “标准化” 处理,然后存储到系统表中。在处理 SQL 查询时,只要 “标准化” 后的 SQL 和系统表中某个被绑 定的 SQL 语句一致,并且系统变量tidb_use_plan_baselines 的值为 on(其默认值为 on),即可使用相应的优 化器 Hint。如果存在多个可匹配的执行计划,优化器会从中选择代价最小的一个进行绑定。 标准化:把 SQL 中的常量变成变 中的常量变成变量参数,对空格和换行符等做标准化处理,并对查询引用到的表显式指定数 据库。例如: SELECT * FROM t WHERE a > 1 -- 以上语句标准化后如下: SELECT * FROM test . t WHERE a > ? 注意: 在进行标准化的时候,IN 表达式中的 ? 会被标准化为 ...。 例如: SELECT * FROM t WHERE a IN (1) SELECT SELECT * FROM t WHERE a IN (1,2,3) -- 以上语句标准化后如下: SELECT * FROM test . t WHERE a IN ( ... ) SELECT * FROM test . t WHERE a IN ( ... ) 不同长度的 IN 表达式被标准化后,会被识别为同一条语句,因此只需要创建一条绑定,对这 些表达式同时生效。 例如: CREATE0 码力 | 4590 页 | 100.91 MB | 1 年前3
共 15 条
- 1
- 2













