Tableau Desktop can extract the data sources in any of these scenarios. Though, the performance and time to run the extract could be long depending on the size of the data source and complexity of the joins involved.
Hope this helps!
You can create Extracts off any joins etc but not an extract of a blend. Also Outer join is not possible hence no question of generating Extract.