title: Extra Fields with SQL MIN() & GROUP BY
body: <p>When using the SQL MIN() function, along with GROUP BY, will any additional columns (not the MIN column, or one of the GROUP BY columns) match the data in the matching MIN row?</p>
  
  <p>For example, given a table with department names, employee names, and salary:</p>
  
  <pre><code>SELECT MIN(e.salary), e.* FROM employee e GROUP BY department
  </code></pre>
  
  <p>Obviously I'll get two good columns, the minimum salary and the department. Will the employee name (and any other employee fields) be from the same row? Namely the row with the MIN(salary)? </p>
  
  <p>I know there could very possibly be two employees with the same (and lowest) salary, but all I'm concerned with (now) is getting all the information on the (or <em>a single</em>) cheapest employee.</p>
  
  <p>Would this select the cheapest salesman?</p>
  
  <pre><code>SELECT min(salary), e.* FROM employee e WHERE department = 'sales'
  </code></pre>
  
  <p>Essentially, can I be sure that the data returned along with the MIN() function will matches the (or <em>a single</em>) record with that minimum value?</p>
  
  <p>If the database matters, I'm working with MySql.</p>