title: Why doesn't "marks < max(marks)" work
body: <p>I want to know the working of the group queries</p>
  
  <p>Suppose there is a table Student(id,name,marks)</p>
  
  <p>Now if i want to output all the students except those/that who scored highest, why this query does not work ?</p>
  
  <pre><code>SELECT * FROM Students
  WHERE marks &lt; MAX(marks)
  </code></pre>
  
  <p>but this works fine</p>
  
  <pre><code>SELECT * FROM Students
  WHERE marks &lt; (SELECT MAX(marks) FROM Students)
  </code></pre>
  
  <p>EDIT:
  Please don't suggest different ways to work this out, I know already.
  My question is WHY THIS DOES NOT WORK, please see the title closely</p>