2つの列の最大値に基づいて各グループから先頭の行を取得する必要があります。各グループから一番上の行を選択してください
これは、テーブルである:
tag_series_id | tag_season_num | tag_episode_num
269653 2 24
269653 3 1
269653 3 2
269653 3 3
281593 1 9
281593 1 11
281593 1 10
結果セットが最大tag_season_num
とtag_episode_num
持つレコードであるべきです。 tag_season_num
の方が優先されます。
結果セットは、このようになります。
tag_series_id | tag_season_num | tag_episode_num
269653 3 3
281593 1 11
これらは私の失敗した試みの一部です:
SELECT tag_series_id, tag_season_num, tag_episode_num, tag_watch_status
FROM taggedshows WHERE
GROUP BY tag_series_id, tag_season_num
ORDER BY tag_season_num desc, tag_episode_num desc;
SELECT tag_series_id, tag_season_num, tag_episode_num
FROM (SELECT * from taggedshows
ORDER BY tag_series_id, tag_season_num desc, tag_episode_num desc) x
GROUP BY tag_series_id;
SELECT tag_series_id, MAX(tag_season_num), MAX(tag_episode_num)
FROM taggedshows
GROUP BY tag_series_id;
この方法を試してみてください:SELECT distinct ts.tag_series_id、 (select MAX( tag_season_num、 (AS tag_serie_id = ts.tag_serie_id)taggedshowsからtag_season_num)はTS – Alejandra