Publish ignores any “Generate SQL only” requests in the chain of analyses it is publishing since it always generates SQL and doesn't execute it. A side effect of this is that analyses designed to generate the SQL for a derived table will not have this affect, but will rather create a volatile table that is selected from, with equivalent final results. An exception to this occurs however when publishing a Variable Creation Subquery or With (Recursive) Query. In these cases the subquery or seed query will always be embedded in the SQL as a derived table.