SELECT max(date_time) FROM emp_monthly_sales group by emp_id.
this is syntactically correct, but not semantically
it does give you a result set of dates, and they do happen to be the last date for each employee, however, all you get is the dates... so this query has a very serious logical shortcoming -- you can't tell whose dates they are!!
my sincere apologies, i was so anxious to move on with this that i only briefly examined your last query, and sort of automatically asked you to rewrite the join (because i won't work with anything except explicit JOIN syntax)
but now i need for you to go back to square one, as it were, and write a brand new query that gets the latest sales date for each employee...
... except that there will be only one table involved in the query, namely, the single table that you talked about in your first post