आप distinct.count(:attribute_name)
. का उपयोग कर सकते हैं ।
(रेल 3 में उपयोग करें:count(:user_id, distinct: true)
इसके बजाय)
इस प्रकार:
UserVideoWatching.where("created_at >= ? AND user_id != ?", 1.month.ago, User.elephant.id)
.group("DATE(created_at)").reorder('created_at').distinct.count(:user_id)
परीक्षण करने में सक्षम नहीं है, लेकिन मुझे लगता है कि यह उस SQL का उत्पादन करेगा जिसके बाद आप हैं।