-1

我想问一个关于我觉得很难完成的查询的问题,至少对我来说是这样。我需要下面表格的行(用红色矩形标记),这些行有min(date)while 表格有不同的 user id' quiz ids。

如果有人可以帮助我,我会很高兴!

提前致谢!

是一张桌子上的照片

4

3 回答 3

0
    select t1.* from sometable t1
    where t1.EndDate = (select min(t2.EndDate) from sometable t2)
于 2013-06-05T09:32:50.297 回答
0

您应该能够进行简单的查询,例如:

select * from your_table_name where EndDate = (select min(EndDate) from your_table_name)
于 2013-06-05T11:09:24.037 回答
0

试试这个 sql。如果您有多个用户进行多个考试,此 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 |
于 2013-06-05T11:19:58.303 回答