[Ror-es] ¿Cómo agrupo por más de una columna?
Jean Droguett
ruby-forum-incoming at andreas-s.net
Tue Apr 17 04:45:58 GMT 2007
Hola
¿Cómo puedo agrupar por más de una columna?
Si agrupo sólo por una columna
@horas = Actividad.sum(:acti_esfuerzo, :group => :proyecto)
el sql que resulta es:
SELECT sum(acti_esfuerzo) AS sum_acti_esfuerzo, proyecto_id AS
proyecto_id FROM actividad GROUP BY proyecto_id
donde puedo buscar de esta forma:
for proyecto in @proyectos
@horas[proyecto.proyecto_id]
pero si quiero agrupar por dos columnas:
@horas = Actividad.sum(:acti_esfuerzo, :group => 'proyecto_id,
acti_fecha')
el sql que resulta es:
SELECT sum(acti_esfuerzo) AS sum_acti_esfuerzo, proyecto_id, acti_fecha
AS proyecto_id_acti_fecha FROM actividad GROUP BY proyecto_id,
acti_fecha
noten el alias "proyecto_id, acti_fecha AS proyecto_id_acti_fecha"
dentro del select
donde @horas == [["2007-04-02", 14.8], ["2007-03-08", 0.5],
["2007-04-03", 15.3], ["2007-01-04", 6.75]]
¿Por qué en el resultado no aparece el proyecto_id?
--
Posted via http://www.ruby-forum.com/.
More information about the Ror-es
mailing list