Jika saya memahami Anda dengan benar, ini harus dilakukan:
SELECT page_id, count(*)
FROM tags
WHERE tag IN ('New Zealand', 'Trekking')
GROUP BY page_id
HAVING count(*) > 1
Anda tidak perlu menggunakan UNION jika Anda memilih dari tabel yang sama.