SQL/MX 3.2 Query Guide (H06.25+, J06.14+)
SQL/MX Operators
HP NonStop SQL/MX Release 3.2 Query Guide—663851-002
7-52
ORDERED_HASH_JOIN Operator
ORDERED_HASH_JOIN Operator
Join Group
The ORDERED_HASH_JOIN operator joins the data from two child tables. This
operator preserves the order of the outer table and does not overflow to disk. It creates
a hash table from the inner table, joins the outer table by hashing each outer row, and
looks for matches in the hash table. The reuse feature enables reuse of the hash table
for subsequent requests within the same query. Choose this operator when you need
to preserve the order of the outer table or if you can benefit from the reuse feature. It
should be chosen only if the inner table is small enough to fit in memory.
Equijoins and cross-products are supported by this operator.
The ORDERED_HASH_JOIN operator has two child nodes. The description field for
this operator contains the following:
The difference between join_predicate and hash_join_predicate tokens is that the
former are the non-equijoin predicates, while the latter are equijoin predicates that are
used to help build and probe the hash table.
The following is an example of the ORDERED_HASH_JOIN operator:
PREPARE TestQuery9 FROM
SELECT s_nationkey, s_suppkey
FROM supplier, partsupp
Token Followed by ... Data Type
fragment_id A sequential number assigned to the fragment. 0
is always the master executor and 1 is reserved
for the EXPLAIN plan. Numbers 2 to n will be
ESP or DAM fragments.
integer
parent_frag The fragment_id for the parent of the current
fragment. The value is (none) for the master
executor.
integer
fragment_type Master, ESP, or DP2. text
hash_join_predicate Expression of the join predicate. expr(text)
join_type Inner, left, natural, inner semi, or inner anti-semi-
join.
text
join_method Name of join method: hash text
join_predicate Expression of the join predicate. expr(text)
parallel_join_type Type1 or Type2, depending on parallel join
algorithm.
text
reuse_comparison_values List of values that cause the hash table to be
rebuilt when values change
.
expr(text)
selection_predicates Expression of the WHERE clause. expr(text)
TP663851.fm Page 52 Thursday, August 2, 2012 4:47 PM










