title: Select record with max value from each group with Query DSL
body: <p>I have a score table where I have players scores, and I want select unique records for each player with the biggest score.</p>
  
  <p>Here is the table:</p>
  
  <pre><code>id | player_id | score | ...
  1  | 1         |  10   | ...
  2  | 2         |  21   | ...
  3  | 3         |  9    | ...
  4  | 1         |  30   | ...
  5  | 3         |  2    | ...
  </code></pre>
  
  <p>Expected result:</p>
  
  <pre><code>id | player_id | score | ...
  2  | 2         |  21   | ...
  3  | 3         |  9    | ...
  4  | 1         |  30   | ...
  </code></pre>
  
  <p>I can achieve that with pure SQL like this:</p>
  
  <pre><code>SELECT *
  FROM player_score ps
  WHERE ps.score = 
  (
      SELECT max(ps2.score)
      FROM player_score ps2
      WHERE ps2.player_id = ps.player_id
  ) 
  </code></pre>
  
  <p>Can you tell me how to achieve the same query with query dsl? I found some solutions with JPASubQuery but this class doesn't work for me (my IDE cannot resolve this class). I am using querydsl 4.x. Thank you in advance.</p>