The OR condition in the join clause forms a Cartesian product when using hash join

Note:
This topic has been translated from a Chinese forum by GPT and might contain errors.

Original topic: 关联条件中的or 在走hash join 时形成笛卡尔积

| username: Raymond

  1. When executing the statement, why does the hash join form a Cartesian product (if I remember correctly, it seems that Oracle does not need to form a Cartesian product)?

  2. Why can’t it use Index join (Oracle should be able to)?