-- 第一种方式 耗时0.074s
SELECT SQL_NO_CACHE t.* FROM (
SELECT * FROM rocky_b_repaymentrecord ORDER BY ID desc
) t GROUP BY t.user_id;
SELECT * FROM rocky_b_repaymentrecord ORDER BY ID desc
) t GROUP BY t.user_id;
-- 第二种方式 耗时0.022s
SELECT SQL_NO_CACHE r.* FROM (
SELECT MAX(id) as id FROM rocky_b_repaymentrecord GROUP BY USER_ID
) s LEFT JOIN rocky_b_repaymentrecord r on(s.id = r.ID);
-- 第三种方式 耗时0.154s
SELECT SQL_NO_CACHE r.* FROM rocky_b_repaymentrecord r WHERE EXISTS (
SELECT id FROM (
SELECT MAX(id) as id FROM rocky_b_repaymentrecord GROUP BY USER_ID
) t where t.id = r.id
);