mysql top N 分組後取前N條

SELECT
	itemTime,
	reporter,
	aggsCount
FROM
	(
		SELECT
			itemTime,
			reporter,
			aggsCount,

		IF (@tmp = itemTime ,@rank :=@rank + 1 ,@rank := 1) AS new_rank ,@tmp := itemTime AS tmp
		FROM
			(
				SELECT
					DATE_FORMAT(w.commit_time, '%Y-%m-%d') AS itemTime,
					w.create_by reporter,
					count(w.id) aggsCount
				FROM
					t_workreport w
				GROUP BY
					itemTime,
					reporter
				ORDER BY
					commit_time
			) tempA
	) tempB
WHERE
	new_rank <= 10

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章