开发者社区 > PolarDB开源 > PolarDB 分布式版 > 正文

PolarDB中mysql我强制两表用hash join . 用BNL() hint无效。怎么回事?

PolarDB中 mysql 我强制两表用hash join . 用BNL() hint无效, 8.0.35版本,我想要这个关联也走hash join,可以实现吗? c05beb46971d6b22d529d31cf2eda4ef.png

展开
收起
三分钟热度的鱼 2024-01-17 21:19:41 58 0
1 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    在PolarDB中,MySQL不支持直接使用HASH JOIN。但是,您可以尝试以下方法来实现类似的效果:

    1. 将其中一个表的列转换为哈希值,然后使用这个哈希值进行连接操作。例如,您可以将一个表的某个列(如id)转换为哈希值,然后在另一个表中查找具有相同哈希值的记录。

    2. 使用其他数据库引擎,如Oracle或PostgreSQL,它们支持HASH JOIN。

    3. 如果可能的话,尝试优化查询语句,减少JOIN操作的次数,或者将数据分片存储在不同的数据库实例上,以提高查询性能。

    关于BNL() hint无效的问题,可能是因为您的PolarDB版本不支持该hint。建议您查阅PolarDB官方文档,了解当前支持的hint和它们的用法。

    2024-01-18 13:29:00
    赞同 展开评论 打赏

PolarDB 分布式版 (PolarDB for Xscale,简称“PolarDB-X”) 采用 Shared-nothing 与存储计算分离架构,支持水平扩展、分布式事务、混合负载等能力,100%兼容MySQL。 2021年开源,开源历程及更多信息访问:OpenPolarDB.com/about

相关电子书

更多
One Box: 解读事务与分析一体化数据库 HybridDB for MySQL 立即下载
One Box:解读事务与分析一体化数据库HybridDB for MySQL 立即下载
如何支撑HTAP场景-HybridDB for MySQL系统架构和技术演进 立即下载

相关镜像