Jim, I thought that at first too. :)

2014-04-28 16:06 GMT-03:00 Niphlod <niph...@gmail.com>:

> seems to me that you should use windowing functions instead....
>
> there's no need to introduce a new method.... you can use expression
> themselves in the select, and extract the field as usual
>
> myexpr = 'first_value(b_field) over (partition by a_field order by
> b_field)'
> rows = db2(db2.test_table.id > 0).select(myexpr, db2.test_table.a_field)
> for row in rows:
>     print row.aa, row[myexpr]
>
>
>
>
> On Monday, April 28, 2014 4:46:43 PM UTC+2, Manuele wrote:
>>
>> Il 28/04/14 16:05, Carlos Costa ha scritto:
>> > I think he is looking for the first record of each group, not the
>> > first record of the entire result.
>> > I think there is no such function in web2py yet.
>> >
>> > I have performed a similar task for reporting using this:
>> > https://docs.python.org/2/library/itertools.html#itertools.groupby
>> >
>> > It will require more computation and memory as you will have do it in
>> > memory but is possible and simple.
>> starting from the point I'm using postgresql (v. 9.3) I was thinking
>> about introducing a new method to the class Expression in dal defined as
>> follows:
>>
>> def array_agg(self):
>>     db = self.db
>>     return Expression(db, db._adapter.AGGREGATE, self, 'array_agg',
>> self.type)
>>
>> and get the first argument of the returned list.
>>
>> maybe this method can be introduced in the dal code but for the moment
>> Is there a way to locally "monkey patch" the Expression class for my
>> application?
>>
>> thank you
>> Cheers
>>
>>     Manuele
>>
>  --
> Resources:
> - http://web2py.com
> - http://web2py.com/book (Documentation)
> - http://github.com/web2py/web2py (Source code)
> - https://code.google.com/p/web2py/issues/list (Report Issues)
> ---
> You received this message because you are subscribed to the Google Groups
> "web2py-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to web2py+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>



-- 
Att.

Carlos J. Costa
Cientista da Computação
Esp. Gestão em Telecom

EL MELECH NEEMAN!
אָמֵן

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to