PolarDB-X支持通过SET PARTITION_HINT语句,指定SQL语句在某个DN分片上执行。
语法
SET PARTITION_HINT=[PARTITION_NAME|GROUP_NAME|GROUP_NAME:TABLE_INDEX]
说明
该语句支持在AUTO和DRDS模式数据库中使用。
参数说明:
PARTITION_NAME:AUTO模式数据库中表的partition_name属性。
GROUP_NAME:DRDS模式数据库中表所在的GROUP_NAME。
TABLE_INDEX:DRDS模式数据库中某GROUP存在多个分表时, TABLE_INDEX表示该分表在所属GROUP中的index,从0开始。
注意事项
仅PolarDB-X的5.4.16-16773973及以上版本支持该命令。
示例
执行以下命令,设置后续的SQL语句在PARTITION_HINT_TEST_DRDS_000003_GROUP上执行。
set PARTITION_HINT='PARTITION_HINT_TEST_DRDS_000003_GROUP:0';
Query OK, 0 rows affected (0.00 sec)
执行以下命令,返回信息展示了SQL语句在PARTITION_HINT_TEST_DRDS_000003_GROUP上执行的结果。
select * from multi_db_single_tbl;
+--------+------+
| id | name |
+--------+------+
| 100003 | c |
+--------+------+
1 row in set (0.02 sec)
执行以下命令,设置后续SQL语句在所有分片上执行。
set partition_hint='';
Query OK, 0 rows affected (0.00 sec)
执行以下命令,返回信息展示了SQL语句在所有分片上执行的结果。
select * from multi_db_single_tbl;
+--------+------+
| id | name |
+--------+------+
| 100003 | c |
| 100002 | b |
| 100001 | a |
+--------+------+
3 rows in set (0.04 sec)
文档内容是否对您有帮助?