Fully managed cloud. 30-day FREE full featured trial. Start Now
Showing results for 
Search instead for 
Did you mean: 

Sometimes it is useful to enforce a materialization of a subselect (or view or CTE) by adding an ORDER BY FALSE to it.
Those cases include:

  1. Late applied filter (see attached, pdf)
  2. Replace global by local join (by enforcing a materialization of a subselect that is smaller than replication border [see replication-border-in-exasol-6-1] with local filters)
  3. Manual precalculation of multiple usages of subselects, views, CTEs


Please be aware that materializations can cause a lot of temporary data if they are big which might result in block swapping and decrease thoughput

The attached documents show when a subselect, view or CTE needs to be materialized   01_Materializations.pdf 

and a use case to improve performance  02_OptimizationExampleMaterialization.pdf 

Those documents require some knowledge about profiling .