Mysql
 sql >> Base de données >  >> RDS >> Mysql

Impossible de sélectionner les lignes regroupées par created_at

Je pense que vous êtes juste un peu confus par la sortie de la console.

Vous dites ceci :

Summary.select("date(created_at) as date, sum(implemented_features)")...

donc le Summary renvoyé instances (contenues dans un ActiveRecord::Relation ) n'ont aucun des Summary habituels attributs :pas d'id , pas de created_at , pas de implemented_featured , etc. Lorsque vous appelez inspect sur un objet ActiveRecord, il veut vous montrer ce qu'il y a à l'intérieur de l'objet et cela signifie qu'il veut vous montrer les attributs de base de données contenus ; votre Summary les instances n'ont aucun des attributs habituels, vous voyez donc des choses comme <Summary id: nil> .

N'ayez crainte, les valeurs que vous avez sélectionnées sont vraiment là. Si vous dites :

Summary.select(...).map(&:date)

vous devriez voir la date(created_at) as date valeurs. Si vous ajoutez un alias pour le sum(implemented_features) vous pouvez ensuite extraire les sommes en utilisant cet alias comme nom de méthode.