Deze SQL retourneert de berichten die beide tags bevatten.
select
p.*
from
posts p
,asset_tags atg1
,asset_tags atg2
,tags t1
,tags t2
where
p.id = atg1.post_id
and t1.id = atg1.tag_id
and t1.tag = 'MySQL'
and p.id = atg2.post_id
and t2.id = atg2.tag_id
and t2.tag = 'Rails'
;
Wat betreft het doen via Active record, zou een alternatief zijn om naar elk van de tags te zoeken en vervolgens &de resulterende arrays om de kruising van de twee te krijgen.