Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Não é possível selecionar o agrupamento de linhas por created_at


Acho que você está um pouco confuso com a saída do console.

Você está dizendo isso:
Summary.select("date(created_at) as date, sum(implemented_features)")...

então o Summary retornado instâncias (envolvidas em um ActiveRecord::Relation ) não tem nenhum Summary usual atributos:sem id , não created_at , sem implemented_featured , etc. Quando você chama inspect em um objeto ActiveRecord, ele quer mostrar o que está dentro do objeto e isso significa que ele quer mostrar os atributos de banco de dados contidos; seu Summary instâncias não têm nenhum dos atributos usuais, então você vê coisas como <Summary id: nil> .

Não tenha medo, os valores que você selecionou realmente estão lá. Se você diz:
Summary.select(...).map(&:date)

você deve ver a date(created_at) as date valores. Se você adicionar um alias para a sum(implemented_features) então você pode extrair as somas usando esse alias como um nome de método.