Forum: Ruby on Rails Issue with mering ActiveRecord query results

Announcement (2017-05-07): is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see and for other Rails- und Ruby-related community platforms.
Sumit Srivastava (Guest)
on 2013-08-07 10:36
(Received via mailing list)
class ABC
def'starts_at <= ?','(ends_at > ? ||
ends_at IS NULL)',


  def self.recently_completed`

    self.completed.where("completed_at > ?", 2.days.ago)`


The issue is when I do:

( + ABC.recently_completed).columns_hash

This gives error, undefined method `columns_hash' for #<Array:.......

When I do:


The query being run is actually combination of the two. They are not run
independently as I expected.

I need a way to write the code as to run the queries separately and then
merge the results but not as an array.
14b5582046b4e7b24ab69b7886a35868?d=identicon&s=25 Joel Pearson (virtuoso)
on 2013-08-08 18:30
If you were going to use Hash#merge to remove duplicates between the two
result sets, you might as well just use Array#uniq on the Array.
Dheeraj Kumar (Guest)
on 2013-08-08 18:50
(Received via mailing list)

It isn't Hash#merge, but ActiveRecord::SpawnMethods#merge

Dheeraj Kumar
This topic is locked and can not be replied to.