title: MAX() and MAX() OVER PARTITION BY produces error 3504 in Teradata Query
body: <p>I am trying to produce a results table with the last completed course date for each course code, as well as the last completed course code overall for each employee. Below is my query:</p>
  
  <pre><code>SELECT employee_number,
         MAX(course_completion_date) 
             OVER (PARTITION BY course_code) AS max_course_date,
         MAX(course_completion_date) AS max_date
  FROM employee_course_completion
  WHERE course_code IN ('M910303', 'M91301R', 'M91301P')
  GROUP BY employee_number
  </code></pre>
  
  <p>This query produces the following error:</p>
  
  <pre><code>3504 : Selected non-aggregate values must be part of the associated group
  </code></pre>
  
  <p>If I remove the MAX() OVER (PARTITION BY...) line, the query executes just fine, so I've isolated the problem to that line, but after searching these forums and the internet I can't see what I'm doing wrong. Can anyone help?</p>