1. 这个思路类似于 两张questions_pass_record表 分别是t1和t2。
  2. 首先从t1表里取出一个t1.pass_count,使用count(*)统计了t2表中同一日期内有几个比t1.pass_count大。
  3. 如果count()=0说明当前取出的pass_count是当天最大的,可以输出。如果count()=1说明当前取出的pass_count是当天第二大的,可以输出。再如果count()=2说明是当天第三大的,此时不满足count()<2,因此不输出。
  4. 综上可知,该题解输出了当天前二大的pass_count
SELECT
    `date`,
    user_id,
    pass_count
FROM
    questions_pass_record qpd1
WHERE
    (
        SELECT
            COUNT(*)
        FROM
            questions_pass_record qpd2
        WHERE
            qpd1.pass_count < qpd2.pass_count
            AND qpd1.date = qpd2.date
    ) < 2
ORDER BY
    `date`,user_id desc