Archives of the TeradataForum
Message Posted: Wed, 15 Jan 2003 @ 15:19:12 GMT
In this example, the Product join is the type of processing used to perform the comparison. Whether this join used a product join or a merge join wouldn't change the outcome because you have a join criteria included in your sql and in the explain output.
A 'real' product join would have resulted (as you said) in a much larger row count, but a 'real' product join will only happen when you omit the join criteria or when you code a CROSS JOIN in your sql.
Think of it this way. There are join types and join strategies.
A join type is what you code in your sql, it allows you to determine the result of the join for any given set of data.
A join strategy is how the optimiser decides to perform that processing and may NOT be the same as you code.
As in this case, you have coded a perfectly acceptable INNER join, but due to DDL, data volumes etc the optimiser has chosen a product join strategy as the quickest way of producing the correct result.
|Copyright 2016 - All Rights Reserved|
|Last Modified: 28 Jun 2020|