Changes

Jump to: navigation, search

Using an Outer Join

2,900 bytes added, 20:51, 10 July 2019
no edit summary
{{Banner-UnderConstruction}}
 
 
 
==Overview==
This article will explain how to use the '''Outer Join''' option for when you are creating a [[Reports|report]] with multiple [[Report Recordsets|recordsets]]. This feature is applicable only for reports with '''[[Classic Report Builder - Column Settings|Builder Type - Classic]]''' (as opposed to our more recent and recommended option, the '''[[Report Builder (Neo)|Neo Report Builder]].'''
 
In a nutshell, the '''Outer Join''' option modifies your report-building so that your report query will display columns from multiple tables, even without matching records. The records that do not match with both tables will simply show up blank.
 
===Inner vs Outer Join===
There are two types of '''Joins '''that can be used in the '''Classic Report Builder '''to connect recordsets in a report: 
 
{| class="wikitable"
|-
!|Inner Join
||
The '''inner join''' displays the intersection between the two selected tables.
 
This is the most common type of join used, and is the default when you [[Adding a Table to a Report|add tables to a report]].
 
For example: When you join the organization and contact table with an inner join, the report will find the matching record(s) from the contact table related to each organization. If no match is found, the record from the company will not be included in the report results. If multiple results are found in the contact table, the company information will be repeated.
 
|-
!|Outer Join
||
The '''outer join''' is very different from an inner join. Instead of limiting results to those from both tables, it limits results to those in the "left" organization table.
 
For example: Assume that you have used the outer join to connect the organization and contact table. If there are no records found in the organization table that match with contacts, a row in the report will still be returned for that organization, but with NULL values for each column taken from contact fields.
 
Only use the outer join if you would still like all results (regardless of matching records with other table) to show up.
 
|}
===Enabling Outer Join===
The '''Outer Join '''connecting functionality (and to connect multiple tables to a report in general) is accessed from the '''Edit Report '''page in the second tab labelled '''Recordsets.'''
 
1. Click on the 9-square menu icon on the top right of your page.
 
:: {{Icon-Menu}} 
2. Under the heading '''Tools, '''select '''Reports.'''
 
3. Click on the '''pencil icon '''next to the report that you would like to edit. 
 
4. Click into the second tab labelled '''Recordsets.'''
 
:: [[File:Recordsets inner outer join.png|thumb|none|600px|border|Outer Join option available for fields found in the Recordsets tab]]
===Example of Outer Join for Reports===
In this article you will modify the query to display companies where there are no contacts.
[[Image:Reps96.png]]
2. Open the '''Query Builder'''.
[[Image:Reps95.png]]
The company records with no contacts are displayed at the top of the list.
=Locating Null Records=
 
You can also use this technique to restrict the results to records where there are '''NO''' matching records in the joined table.
[[Image:Reps94.png]]
2. '''Build''', '''save''', and '''preview''' the report.
[[Image:Reps93.png]]
You can hide the two columns that are not displaying any date by clicking the '''Show''' check box for these two columns.
{{PrevNextStart}} [[Reports Based on Multiple Tables - Overview]]{{PrevNextMid}} [[Building Sub-Reports]]{{PrevNextEnd}}    ==See Also==* [[Reports_Based_on_Multiple_Tables_-_Overview#Inner_and_Outer_Joins|Definition of Inner and Outer Joins]]
[[Category:Reports]]
2,299
edits

Navigation menu