\newcommand\cost[1]{\shade{orange}{#1}} \section{Query Processing} In this section, knowing the time complexities by heart is very important for the exam. They are highlighted \cost{like this}. \subsection{Sorting} \input{parts/04_query-processing/00_sorting/00_intro.tex} \input{parts/04_query-processing/00_sorting/01_merge-sort.tex} \input{parts/04_query-processing/00_sorting/02_replacement-sort.tex} \input{parts/04_query-processing/00_sorting/03_sorting-with-b-trees.tex} % \input{parts/04_query-processing/00_sorting/} \newpage \subsection{Selection} \input{parts/04_query-processing/01_selection/00_intro.tex} \input{parts/04_query-processing/01_selection/01_index-scan.tex} \input{parts/04_query-processing/01_selection/02_index-matching.tex} % \input{parts/04_query-processing/01_selection/} \newpage \subsection{Projection} \input{parts/04_query-processing/02_projection/00_intro.tex} \input{parts/04_query-processing/02_projection/01_duplicate-elimination.tex} \input{parts/04_query-processing/02_projection/02_set-operations.tex} % \input{parts/04_query-processing/02_projection/} \subsection{Aggregation} \input{parts/04_query-processing/03_aggregation.tex} \newpage \subsection{Join} \input{parts/04_query-processing/04_join/00_simple-join.tex} \input{parts/04_query-processing/04_join/01_nested-loops.tex} \input{parts/04_query-processing/04_join/02_index-nested-loops.tex} \input{parts/04_query-processing/04_join/03_block-nested-loops.tex} \input{parts/04_query-processing/04_join/04_block-index-nested-loops.tex} \input{parts/04_query-processing/04_join/05_sort-merge-join.tex} \input{parts/04_query-processing/04_join/06_optimized-smj.tex} \input{parts/04_query-processing/04_join/07_hash-join.tex} \input{parts/04_query-processing/04_join/08_partitioned-hash-join.tex} \input{parts/04_query-processing/04_join/09_conclusion.tex} % \input{parts/04_query-processing/}