少なくとも私にとっては難しい質問について質問したいと思います。下のテーブルの行 (赤い四角形でマーク) が必要です。これにはmin(date)
、テーブルに異なるユーザーがid
含まれていますquiz id
。
誰かがこれで私を助けることができれば、私は幸せです!
前もって感謝します!
これがテーブルからの写真です
次のような単純なクエリを実行できるはずです。
select * from your_table_name where EndDate = (select min(EndDate) from your_table_name)
このSQLを試してください。この SQL は、複数のユーザーが複数の試験を受けている場合に役立ちます。
MySQL 5.5.30 スキーマのセットアップ:
create table test(
userid int,
enddate datetime,
quizid int);
insert into test
values(823,'2013-02-06 14:23:05',5);
insert into test
values(823,'2013-02-06 14:23:05',5);
insert into test
values(823,'2013-02-06 14:23:05',5);
insert into test
values(824,'2013-02-06 14:23:08',5);
insert into test
values(824,'2013-02-06 14:23:10',5);
クエリ 1 :
select DISTINCT userid,quizid,enddate
from test
where enddate IN(
select min(enddate)
from test
group by userId,quizId
)
結果:
| USERID | QUIZID | ENDDATE |
-----------------------------------------------------
| 823 | 5 | February, 06 2013 14:23:05+0000 |
| 824 | 5 | February, 06 2013 14:23:08+0000 |