skip to main content
Designing and coding the IP : Join processing : Implementing join pushdown : Supporting join pushdown of multiple join tables
 

Supporting join pushdown of multiple join tables

Your IP may be designed to implement join pushdown processing of multiple inner tables. While building the row of any table, you can check the next inner table in the join using dam_getNextJoinStmt. If the next inner table is related to the current table you can build the rowset of the next inner table and associate the rowset as the join rowset using dam_addJoinRowSet. When the IP implements join pushdown, the IP is not required to build join rowsets for all the inner tables.
For example, in the following join query, the IP can build join rowsets of Table B when building rows of Table A and build join rowsets of Table D when building rows of Table C.
SELECT ... FROM A, B, C, D WHERE...
To process this query, the OpenAccess SDK SQL engine calls the IP for records of Table A and records of Table C. Records of Table B and D are picked up from the join rowsets.