In this month's Significa, I explained that IBM has released support for outer joins in SQL as a set of PTFs. The question is, once you load and apply the PTFs, how do you actually code the outer join SQL statement? It is part of the FROM clause, and you can see the syntax diagram in 3 (see page 69).
In this month's Significa, I explained that IBM has released support for outer joins in SQL as a set of PTFs. The question is, once you load and apply the PTFs, how do you actually code the outer join SQL statement? It is part of the FROM clause, and you can see the syntax diagram in Figure 3 (see page 69).
To demonstrate the new support, I have an SQL statement in 4. In the example, I join a file called ITEMS and a file called RETURNS. The statement returns joined records from the two files even if an ITEMS record doesn't have a matching RETURNS record.
To demonstrate the new support, I have an SQL statement in Figure 4. In the example, I join a file called ITEMS and a file called RETURNS. The statement returns joined records from the two files even if an ITEMS record doesn't have a matching RETURNS record.
In 5, you can see the results of 4's SQL statement. For the record of item number 5, there was no matching RETURNS record; the nulls returned showed as dashes. As you can see in the syntax diagram, the new syntax also supports inner and exception joins. Inner joins return only records that have matching records in both files, and exception joins return only records that don't have matching records in both files. It is the outer join support that caught my attention.
In Figure 5, you can see the results of Figure 4's SQL statement. For the record of item number 5, there was no matching RETURNS record; the nulls returned showed as dashes. As you can see in the syntax diagram, the new syntax also supports inner and exception joins. Inner joins return only records that have matching records in both files, and exception joins return only records that don't have matching records in both files. It is the outer join support that caught my attention.
-Jim Hoopes
TechTalk: Using Outer Joins in SQL
Figure 3: Syntax Diagram for Joins
+------------------------------------------------------------+ | | | | | <-,---------< | | >--FROM----table-ref-------------------------------------> | | | | TABLE-REF: | | |--.-single-table-.--------------------------------------| | | '-join-table---' | | | | SINGLE-TABLE: | | |--.-table-name-.--.--------------------------.----------| | | '-view-name--' | .-AS-. | | | '-'----'--correlation-name-' | | | | JOIN-TABLE: | | |--.-table-ref--.-join-table-2------------.-.------------| | | | '-CROSS JOIN--single-table-' | | | '-(--join-table--)------------------------' | | | | JOIN-TABLE-2: | | |--join-type--JOIN--single-table--ON--join-condition-----| | | | | JOIN-TYPE: | | .-INNER-----------. | | |--+-----------------+-----------------------------------| | | | .-OUTER-. | | | |-LEFT--'-------'-| | | '-EXCEPTION-------' | | | | JOIN-CONDITION: | | <--------------------------< | | |--.-join-predicate-------.---.-----------------------.--| | | '-(--join-condition--)-' '-AND--join-condition-2-' | | | | JOIN-CONDITION-2: | | |--.-join-predicate-------.------------------------------| | | '-(--join-condition--)-' | | | | JOIN-PREDICATE: | | |--expression--.-=--.--expression------------------------| | | |-¬=-| | | |-<>-| | | |->--| | | |->=-| | | |-<--| | | |-<=-| | | |-¬<-| | | '-¬>-' | | | +------------------------------------------------------------+TechTalk: Using Outer Joins in SQL
Figure 4: Using Outer Join Support
![]()
TechTalk: Using Outer Joins in SQL
Figure 5: Sample Output Using Outer Join
![]()
Business users want new applications now. Market and regulatory pressures require faster application updates and delivery into production. Your IBM i developers may be approaching retirement, and you see no sure way to fill their positions with experienced developers. In addition, you may be caught between maintaining your existing applications and the uncertainty of moving to something new.
IT managers hoping to find new IBM i talent are discovering that the pool of experienced RPG programmers and operators or administrators with intimate knowledge of the operating system and the applications that run on it is small. This begs the question: How will you manage the platform that supports such a big part of your business? This guide offers strategies and software suggestions to help you plan IT staffing and resources and smooth the transition after your AS/400 talent retires. Read on to learn:
LATEST COMMENTS
MC Press Online