Documentation ¶
Overview ¶
Package joinmark converts Oracle JOIN mark
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Rule ¶
type Rule struct{}
func (Rule) Rewrite ¶
Rewrite replaces join mark with OUTER JOIN.
Since [rewrite.Engine] uses depth-first walk, all sub-queries are already translated. This rule can safely recurse to handle all join marks in the tree.
The rule is not perfect and may fail to rewrite some queries. It will fail if:
- the SELECT * order is changed.
- a column in WHERE is not prefixed by a table.
- the rule loses table in FROM clause. (it's a bug)
- the rule loses condition in WHERE and JOIN. (also a bug)
Click to show internal directories.
Click to hide internal directories.