This will not be an easy solution. You cannot just execute a single query to get this for each day. You first have to capture the data and then you can perform the query. You will need to setup some tables to capture the information you want. Then you will need to periodically capture snapshot data and put it into the tables. Then you run your daily queries to get your top 10 lists.