This is very interesting!
The 1st part should be relatively easy for some forum members. I hope they will see this post. You can check this thread for examples:
http://www.radiodj.ro/community/index.php?topic=6658.msg50604#msg50604Let's see if a pro can pick this up. Otherwise I
might be able to scrape together a string for you.
As for resetting the play count that could be done with Events.
Add an event that will run once every day that will use plugin action > PluginAction|Utilities|ResetPlaycounts
But you probably need to add some arguments.
Again I can't help to reduce the reset to a specific category,... I'm sure it can be done.
Also I have been told there's 3rd party apps that are made to run commercials somehow but then again I have no need for commercials and hence I don't really know much on the subject.
Let's see if we can get some more feedback on the subject and then decide what to do. If we decide to use the SQL thingy We will need to know the "ID" of the "category" OR "track type" and any other criteria you need to use to select from the correct pool.