Pararece q en lugar de 'select_all' podes usar 'select_value' y te
devuelve el valor directamente sin tener q meterte dentro del array y
luego del hash.

(Por cierto en cualquier caso retorna un String q luego tendrias q
convertir a Float)

El día 24 de marzo de 2010 12:52, dwayne <[email protected]> escribió:
> creo que esta es la mejor opción.
>
> 2010/3/24 Pablo Herrero <[email protected]>
>>
>> El 24 de marzo de 2010 02:29, Pablo Herrero <[email protected]>
>> escribió:
>> >
>> > El 19 de marzo de 2010 20:19, dwayne <[email protected]> escribió:
>> >>
>> >>  probé pero me retorna un objeto de ActiveRecord <Asistencia>. yo
>> >> preciso un float
>> >
>> > Si no te molesta usar puro SQL podes usar la connection de AR, dejando
>> > de lado los modelos, de esta forma, q te devuelve array de hashes que no
>> > esta asociado a ninguna clase:
>> > ActiveRecord::Base.select_all(" select avg(counts) from ( select
>> > count(*) counts from asistencias where horario_id = 50007 group by
>> > horario_id, fecha ) cuenta") # => [{"avg(counts)" => 23.34 }]
>> > Despues buscas el valor del hash en el primer elemento del array y
>> > listo.
>>
>> Perdon me olvide de poner el acceso a connection en AR::Base,  :P
>>
>> Queda asi:
>>
>> ActiveRecord::Base.connection.select_all(" select avg(counts) from (
>> select count(*) counts from asistencias where horario_id = 50007 group
>> by horario_id, fecha ) cuenta") # => [{"avg(counts)" => 23.34 }] Por
>> ejemplo
>> _______________________________________________
>> Ruby mailing list
>> [email protected]
>> http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar
>
>
> _______________________________________________
> Ruby mailing list
> [email protected]
> http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar
>
>
_______________________________________________
Ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar

Responder a