Hey Benbunny,
The only way to query across two different datasources is with CF 5 and the new "query of queries" feature. This allows you to query two different datasources and execute a third query against the previous two which results in a single query containing data from two different datasources.
If this isn't an option, the only other solution I can think of is to query each datasource independently and then build a query manually with the querynew(), querySetCell(), etc.. functions. Depending on how you need the data sorted and joined, this approach can be very difficult.
Hope this helps,
GJ