开发指南—常见问题—如何使用HINT

本文涉及的产品
云原生数据库 PolarDB 分布式版,标准版 2核8GB
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 本文介绍了HINT的语法级示例。

HINT作为一种SQL补充语法,在关系型数据库中扮演着非常重要的角色。它允许用户通过相关的语法影响SQL的执行方式,对SQL进行特殊的优化。同样,PolarDB-X也提供了特殊的HINT语法。

语法


/*+TDDL: hint_command [hint_command ...]*/
    
/!+TDDL: hint_command [hint_command ...]*/


说明 如果使用 /*+TDDL:hint_command*/ 格式,在使用MySQL官方命令行客户端执行带有PolarDB-X自定义HINT的SQL时,请在登录命令中加上-c参数。否则,由于PolarDB-X自定义HINT是以 MySQL 注释形式使用的,该客户端会将注释语句删除后再发送到服务端执行,导致PolarDB-X自定义HINT失效。详情请参见MySQL 官方客户端命令

示例


# 查询每个分库中的物理表名

/+TDDL:scan()/SHOW TABLES;

# 将查询下发到RDS只读实例的0000分库上
/+TDDL:node(0) slave()/SELECT * FROM t1;
# 强制指定workload为AP
/+TDDL:WORKLOAD=AP/SELECT FROM t1;

PolarDB-X支持在HINT语句中使用多个HINT命令:


SELECT /+TDDL:node(0) slave()*/ ...;

PolarDB-X不支持通过以下方式使用多个HINT命令:


# 不支持单条SQL语句中包含多个HINT语句
SELECT /+TDDL:node(0)/ /+TDDL:slave()/ ...;

# 不支持HINT语句中包含重复的HINT命令
SELECT /+TDDL:node(0) node(1)/ ...;
相关实践学习
Polardb-x 弹性伸缩实验
本实验主要介绍如何对PolarDB-X进行手动收缩扩容,了解PolarDB-X 中各个节点的含义,以及如何对不同配置的PolarDB-x 进行压测。
相关文章
|
SQL 关系型数据库 MySQL
开发指南—常见问题—如何使用HINT
本文介绍了HINT的语法级示例。
123 0
|
SQL 关系型数据库 MySQL
开发指南—常见问题—INDEX HINT
PolarDB-X支持全局二级索引(Global Secondary Index,简称GSI) ,您可以通过INDEX HINT命令指定从GSI中获取查询结果。
|
SQL 索引
【笔记】开发指南—常见问题—DDL常见问题
本文汇总了PolarDB-X上常见的DDL执行问题。
115 0
|
SQL 算法 关系型数据库
【笔记】开发指南—常见问题—如何使用全局二级索引
PolarDB-X支持全局二级索引,本文将在分库分表语法下介绍如何创建、使用全局二级索引功能。
134 0
【笔记】开发指南—常见问题—如何使用全局二级索引
|
SQL 索引
开发指南—常见问题—DDL常见问题
本文汇总了PolarDB-X上常见的DDL执行问题。
|
SQL 算法 关系型数据库
开发指南—常见问题—如何使用全局二级索引
PolarDB-X支持全局二级索引,本文将在分库分表语法下介绍如何创建、使用全局二级索引功能。
142 0
开发指南—常见问题—如何使用全局二级索引
|
9月前
|
SQL 存储 缓存
mybatis中#{}和${}的区别
mybatis中#{}和${}的区别
89 0
mybatis中#{}和${}的区别
|
SQL 关系型数据库 MySQL
PolarDB-X 1.0-用户指南-自定义HINT-HINT简介
自定义HINT概要 HINT 作为一种 SQL 补充语法,在关系型数据库中扮演着非常重要的角色。它允许用户通过相关的语法影响 SQL 的执行方式,对 SQL 进行特殊的优化。同样,PolarDB-X 也提供了特殊的 HINT 语法。 例如,假设已知目标数据在某些分库的分表中,需要直接将 SQL 下发到该分库执行,就可以使用PolarDB-X自定义 HINT 来完成。
232 0
|
7天前
|
NoSQL Cloud Native Redis
Redis核心开发者的新征程:阿里云与Valkey社区的技术融合与创新
阿里云瑶池数据库团队后续将持续参与Valkey社区,如过往在Redis社区一样耕耘,为开源社区作出持续贡献。
Redis核心开发者的新征程:阿里云与Valkey社区的技术融合与创新