As someone who builds custom reports, it would be really useful to be able to optionally add secondary data objects, much like a "Left Join" in SQL. This would allow us to include data from a second data object if it exists, but otherwise leave blank any of those results if it doesn't.

Here's an example: let's say I'm creating a custom workitem report and I would like to include information about an associated request if it exists. So, I start with the "Workitem Details" data object, and then add "Requested Workitem" and "Request Details". Problem is, now my data set is ONLY returning workitems that have requests, when all I really wanted was to show an associated request if there is one. From what I can tell, I don't think the custom report builder gives us a way to do that.

This would be hugely helpful in building reports that reference any type of optional relationship - blocking issues, commits, links, attachments, dependencies, etc. For a lot of us custom reports are the only way we can creatively mine and search for some of this data, but not having the ability to left join that data leaves a big portion of the database out of our reach.