When there is a complex logic which takes long time to process using TEMP views for further processing will take processing time of the calling script + the time of the TEMP view which is not optimal in DBMS. SAme effect or slower than writing the temp view code as a sub query....

If it is a TEMP TABLE then the data can be reused as much as required and will be auto discarded at end of session.