SELECT post.id FROM list_posts AS post LEFT OUTER JOIN private ON (post.id = private.pid) LEFT OUTER JOIN official_user AS adminu LEFT OUTER JOIN count_comments AS ccount ON (post.id = ccount.pid) WHERE ( post.id = '5' ) AND ( ( post.private = false ) OR ( (adminu.user = 'good') AND (private.uid = adminu.user) ) ) LIMIT 1