No, you would have to copy/paste sections of the query.
The posts
table in the database includes a via_email
boolean, so yes you can find out which posts were created via email
However, Discourse doesn’t include any trackers in the emails it sends, so there won’t be any way to determine whether an email notification has been ‘read’ or not