0

DB内のすべてのファミリの最新の履歴アイテム(特定のカテゴリから-1422)を取得する必要があります。私は周りにいくつかの例を見て、このクエリに行き着きました:

SELECT *, MAX(created_at) 
FROM family_histories
WHERE family_history_cat_id = 1422
GROUP BY family_id

いいですか?

4

2 に答える 2

0

INNER JOINを使用して、各グループのMAXIDを取得することもできます

SELECT
  fh.*
FROM family_histories
  INNER JOIN (SELECT
        family_history_cat_id,
        MAX(created_at)
          FROM family_histories
          GROUP BY family_id) AS l
    ON l.family_history_cat_id = fh.family_history_cat_id
WHERE fh.family_history_cat_id = 1422
于 2013-03-11T11:47:37.353 に答える
0

試す

SELECT *
FROM family_histories
WHERE family_history_cat_id = 1422
GROUP BY family_id
ORDER BY created_at DESC
LIMIT 1
于 2013-03-11T11:48:08.093 に答える