# File lib/taggable.rb, line 381
        def find_related_tagged(related, options = {})
          related_id = related.is_a?(self) ? related.id : related
          options = { :limit => 5 }.merge(options)
          
          o, o_pk, o_fk, t, tn, t_pk, t_fk, jt = set_locals_for_sql
          sql = "SELECT o.*, COUNT(jt2.#{o_fk}) AS count FROM #{o} o, #{jt} jt, #{t} t, #{jt} jt2 
                 WHERE jt.#{o_fk}=#{related_id} AND t.#{t_pk} = jt.#{t_fk} 
                 AND jt2.#{o_fk} != jt.#{o_fk} 
                 AND jt2.#{t_fk}=jt.#{t_fk} AND o.#{o_pk} = jt2.#{o_fk}"
          sql << " AND #{sanitize_sql(options[:conditions])}" if options[:conditions]
          sql << " GROUP BY o.#{o_pk}"
          sql << " ORDER BY count DESC"
          add_limit!(sql, options)
          
          find_by_sql(sql)          
        end