Puoi pensarlo come "trova tutte le righe nei post che non hanno una corrispondenza nei tag (per un tag specifico)"
Questo è il caso d'uso da manuale per un LEFT JOIN.
LEFT JOIN tag_post ON post.id = tag_post.postid AND tag_post.tagid = {required_tagid}
WHERE tag_post.tag_id IS NULL
Nota che devi avere il tag id nella clausola ON del join.
Per un riferimento sui tipi di join, vedere qui:http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html