2012-03-20 8 views
0

私は2つのテーブルuserとhraを持っています。ユーザーはユーザーテーブル内に1つのレコードしか持てませんが、複数のhrasを持つことができます。私がしたいことは、ユーザーごとに1つのhraだけを取得することです。私は以下の質問があります。誰でもその手助けをすることができますか?ユーザーごとに1レコードを選択するにはどうすればいいですか?

$query = "SELECT u.id AS user_id, h.id AS hra_id FROM users u 
      INNER JOIN hra h ON u.id = h.user_id 
      WHERE h.date BETWEEN ? AND ? 
      AND h.done = 1 
+0

?なぜあなたは1つしか望んでいないのですか? – Yamikuronue

+1

検索したい特定の 'hra'があるか、' WHERE'節を満たす 'hra'に満足していますか? – ruakh

答えて

2

あなたはMAX(h.idを)したいと仮定すると、これは動作するはずです:

HRAしたいん
SELECT u.id AS user_id, MAX(h.id) AS hra_id FROM users u 
     INNER JOIN hra h ON u.id = h.user_id 
     WHERE h.date BETWEEN ? AND ? 
     AND h.done = 1 
GROUP BY u.id 
関連する問題