SQL Equivalent LEFT/RIGHT JOIN for cross-object custom reports

Currently when doing a cross-object report you need to create filters for each object.

Unless I'm mistaken, this means that reporting is in effect doing an INNER JOIN across two tables and makes a LEFT/RIGHT JOIN impossible.

As such, a report will only return records where: 

i) record A matches the A object filters and
ii) record A has an associated record B which matches the B object filters

However, sometimes you may want to only filter by object A and return all records that meet the object A filter criteria independently of whether they have an associated record of object type B.

For example, you may want to see ALL Contacts created after a certain date and via a given Original Source, along with Deal Stage and Deal Amount on associated deals. If there is no associated deal, I still want to see the specified info from the Contact records

Support told me to do two reports and then cross-reference. Yes it's a workaround but is really not good enough.