You usually have to include ALL the selected fields in the groupby and
orderby clauses.
Anyhow, the logic of the query doesn't seem correct either. I think you
probably need something like this:
count = db.ficheiros.entity.count()
db(db.ficheiros.entity==db.entity.id).select(db.ficheiros.entity, count,
groupby=db.ficheiros.entity, orderby=db.ficheiros.entity)
You can always see the SQL generated by printing to the console with _select.
For example:
db(db.ficheiros.entity==db.entity.id)._select(db.ficheiros.entity, count,
groupby=db.ficheiros.entity, orderby=db.ficheiros.entity)
All the best.
On Wednesday, 14 December 2016 16:44:05 UTC, Ramos wrote:
>
> can i get some help?
> it was working with sqlite but not with postgresql
>
> for row in db(db.ficheiros.entity==db.entity.id).select(db.entity.entity,
> db.entity.id,count,groupby=db.entity.entity):
>
>
> <class 'psycopg2.ProgrammingError'> column "entity.id" must appear in the
> GROUP BY clause or be used in an aggregate function LINE 1: SELECT
> entity.entity, entity.id, COUNT(entity.id) FROM fich... ^
>
> Many thanks
> antónio
>
--
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 [email protected].
For more options, visit https://groups.google.com/d/optout.