Das behebt nicht dein Problem, dass Queries dieser Art nicht optimierbar sind.
D.h., dass deine UDTF für die Satzauswahl per Parameter zuständig ist um dann ein Subset an Daten zu liefern, dass dann per Where/Join-Klauseln ggf. weiter eingeschränkt wird.

Einfacher sind da eher Konzepte, für ausgewählte Tabellen mit Replizierung zu arbeiten. M.a.W., die benötigten Daten der jeweils anderen Systeme lokal zu halten und regelmäßig zu aktualisieren.