我有下面的代碼:created_at日期語法問題
humans = user.humans.joins(:human_logins).where(human_logins_count: 10).group('humans.id').having('MAX(human_logins.created_at) >= ?', Date.today() - schedule.value.day)
的問題,這是created_at) >= ?
段,如果我的日期是等於7天前,它會發現在中所做的記錄過去7天,而不是找到7天前創建的記錄,而不是7天前的6天,而不是9天。
我該如何使其發現記錄恰好在7天前創建?我正在考慮使用類似("? <= created_at AND created_at <= ?", schedule.value.days.ago.beginning_of_day, schedule.value.days.ago.end_of_day)
的東西,但我不確定在這種情況下如何使用它。
的ActiveRecord :: StatementInvalid:PG :: GroupingError:錯誤:列 「human_logins.created_at」 必須出現在GROUP BY子句或在聚合中使用函數 LINE 1:... human_logins_count「= 5 GROUP BY humans.id HAVING human_logi ... –
結帳更新回答 –
ActiveRecord :: StatementInvalid:PG :: GroupingError:錯誤:列」humans.id「必須出現在GROUP BY子句或用於集合函數 LINE 1:SELECT「humans」。* FROM「humans」INNER JOIN「human_logins」ON ... –