これを次のように簡略化できると思います(データエクスプローラーのマジックにも頼ることができます)。
-- [params]
-- post_id :post_url
-- text :poll_name = poll
SELECT
pv.user_id,
po.html AS answer,
ue.email
FROM poll_options po
JOIN poll_votes pv ON po.id = pv.poll_option_id
JOIN polls p ON p.id = pv.poll_id
JOIN user_emails ue ON pv.user_id = ue.user_id AND ue.primary
WHERE p.post_id = :post_url
AND p.name = :poll_name
ORDER BY po.html
post_id パラメータのタイプを使用すると、投稿の URL を貼り付けて、その post_id を取得できます(例: https://meta.discourse.org/t/export-a-list-of-user-emails-by-user-id/373768/5)。また、投稿内のほとんどの単一の投票は、2番目の投票が同じ投稿に追加される(または手動で追加される)まで、単純に「poll」と呼ばれます。そのため、:poll_name のデフォルトとしてこれを含めることは便利だと思われます。
また、user_id にはいくつかのマジックがあり、アバターとユーザー名が表示され、単純なユーザー ID ではなく、ユーザーカード/プロフィールへのリンクになります。結果を「オンサイト」で表示するには非常に便利ですが、エクスポートする場合は、テキストバージョンのユーザー名を取得するために users テーブルを再度追加する必要があります。