La única respuesta que es válida es crear su propio marco para eso. Lo he hecho unas cuantas veces. Lo que desea se parece más o menos a un generador de informes complejo que genere informes sobre la marcha, pero desea crear un generador de consultas complejo con ayudas visuales para el cliente.
Lo primero que haría es usar un modelo que represente cada tabla y ofrezca mecanismos para describir los campos de la tabla para que pueda mostrar los campos al usuario. Luego cree un mecanismo de vinculación en sus modelos que diga:si vinculo esta tabla y esta tabla, ¿cuál es el JOIN que debo usar?
Deje que su usuario seleccione los modelos para sus columnas para usar y luego use sus modelos para crear la consulta para usted. En realidad, funciona bien, pero lleva bastante tiempo hacerlo.
Buena suerte