2011-02-14 82 views
0

我有一個範圍我需要做一個連接,但需要避免重複行

scope:with_tags,lambda {| tag | ([「Restaurants」,「Real State」])

Questionnaire.with_tags([「Restaurants」,「tag」), 「真正的國家」])。to_sql

=>「SELECT questionnaires。* FROM questionnaires INNER JOIN quest_tags ON questionnairesid = quest_tagsquestionnaire_id INNER JOIN tags ON tagsid = quest_tagstag_id WHERE(在tags.name( '餐廳','真實狀態'))「

我什麼ed是 「SELECT DISTINCTquestionnaires。* FROM questionnaires INNER JOIN quest_tags ON questionnairesid = quest_tagsquestionnaire_id INNER JOIN tags ON tagsid = quest_tagstag_id WHERE(tags.name在( '餐廳', '實態'))」

什麼我需要做的,我的範圍,以獲得在選擇

回答

1

範圍DISTINCT:with_tags, lambda {| tag | joins(:tags).where('tags.name in(?)',tag).group('questionnaires.id')}

+0

只需要廣告組 – user567592 2011-02-14 20:47:19