title: ActiveRecord Joins result
body: <p>Doing an ActiveRecord join in RoR seems to work if I look at the generated SQL.
  But what I can't figure out is why the result of that SQL isn't returned into the variable.
  What I'm doing is:</p>
  
  <pre><code>class Book &lt; ActiveRecord::Base
    has_many :readings, dependent: :destroy
    has_many :readers, :through =&gt; :readings
    accepts_nested_attributes_for :readings
  end
  
  class Reader &lt; ActiveRecord::Base
    has_many :readings, dependent: :destroy
    has_many :books, :through =&gt; :readings
    accepts_nested_attributes_for :books
  end
  
  class Reading &lt; ActiveRecord::Base
    belongs_to :reader
    belongs_to :book
  end
  </code></pre>
  
  <p>Now, when asking:</p>
  
  <pre><code>result = Reading.where(:reader_id =&gt; rid, ).joins(:book).select(columns.collect{|c| c[:name]}.join(',')).flatten
  </code></pre>
  
  <p>It shows the correct generated SQL:</p>
  
  <pre><code>SELECT readings.id,books.title,books.author,readings.when FROM `readings` INNER JOIN `books` ON `books`.`id` = `readings`.`book_id` WHERE `readings`.`reader_id` = 2
  </code></pre>
  
  <p>BUT: the result variable only contains the values of the Reading record, NOT the fields of the joined table.</p>
  
  <p>What am I missing?</p>