Имеется n-ное количество запросов типа "SELECT * FROM table WHERE tags RLIKE tag".
Как найти те строки таблицы table, которые встречаются в результатах всех этих n запросов?
Для двух запросов можно сделать:
"SELECT * FROM table WHERE tags RLIKE tag1
INTERSECT
SELECT * FROM table WHERE tags RLIKE tag2"
В данном случае INTERSECT вообще не нужен. Решается банальнейшим AND: SELECT * FROM table WHERE tags RLIKE tag1 AND tags RLIKE tag2 AND tags RLIKE tag3...