Попробуйте что-то вроде этого:
SELECT `name`, COUNT(id) as operations
FROM myTable
WHERE create_time BETWEEN DATE_SUB(NOW(), INTERVAL -7 DAY) AND NOW()
GROUP BY `name`
ORDER BY COUNT(id) DESC
LIMIT 50;
Это будет подсчитывать количество операций для каждого имени операции, сортировать результаты по количеству и возвращать только 50 записей.Обратите внимание, что это ровно семь дней истории, другими словами, если вы выполните запрос в полдень, начало диапазона будет полдень 7 дней назад.
См. LIMIT , COUNT , GROUP BY , DATE_SUB