This table shouldn't be queried frequently. I mean, no user request should fire this query. The table is there just for backoffice purposes. E.G.: maybe you want to analyze some specific user behavior manually.
If you need something from it then create a filter module and log the information in your own (properly indexed) tables. There shouldn't be anything in the ^eventlog table that you can't get from a filter module.
IMPORTANT: don't be tempted to add an index on this table, which I guess it is what you're asking in your question. It will decrease the overall site performance.
Tips for your specific query:
1. Avoid the UNIX_TIMESTAMP function (see the example)
2. Use an IN instead of the ORs
3. Use a different table to store the events and create a compound index on datetime and event (in that order):
WHERE datetime > CURDATE() - INTERVAL 5 DAY
AND event IN ('q_post', 'a_post', 'c_post', 'a_select')
ORDER BY datetime DESC