47/224
\begin{frame}
  \frametitle{Self Joins}

  \begin{code}{\textwidth}{Students that solved at least two homework assignments}
    \remark{(This may also be solved using aggregations.)}
    \bigskip
    
    \small
    \BUseVerbatim{query2}
  \end{code}
  \medskip
  
  \begin{quiz}{\textwidth}{``Unexpected'' result}
    What is going wrong here?
  \end{quiz}
  \pause
  \smallskip

  \begin{code}{\textwidth}{}
    We need to ensure that \sql{R1} and \sql{R2} refer to distinct results:\vspace{-1ex}
    \begin{talign}
      &\vdots \\[-1ex]
      &\sql{and (R1.sid <> R2.sid or }\\[-.5ex]
      &\sql{\ \ \ \ \ R1.category <> R2.category or} \\[-.5ex]
      &\sql{\ \ \ \ \ R1.number <> R2.number)}
    \end{talign}
  \end{code}
  \bigskip
\end{frame}

\theme{Duplicate Elimination}