distinct does not work on GAE either.


On Jan 30, 2:25 pm, "Arun K.Rajeevan" <[email protected]> wrote:
> x = db(~db.languages.id.belongs(db()._select(db.words.lang,
> distinct=True))).select()
>
> This works fine for sqllite on which I'm developing
>
> But it doesn't work for appengine.
> So I tried,
>
> lst = db().select(db.words.lang, distinct=True).as_list()
> lst = map(lambda x: x['lang'],  lst)
> x = reduce((lambda x, y: x|y), map((lambda x: db(~db.languages.id ==
> x).select()), lst))  
>
> This gives me error.  *OperationalError: near "DESC": syntax error*
> *
> *
> But if I change ~db.languages.id == x to db.languages.id == x, then it works
> (notice that I removed ~), but it's not what I want.
> I need to negate the result.
>
> Please help me to correctly do this.
>
> ----------------------------Full traceback----------------------------
>
> Traceback (most recent call last):
>   File "/home/kra/Evolve/Works/Python/web2py_vl/gluon/restricted.py", line
> 188, in restricted
>     exec ccode in environment
>   File
> "/home/kra/Evolve/Works/Python/web2py_vl/applications/init/controllers/mana 
> ge.py",
> line 54, in <module>
>   File "/home/kra/Evolve/Works/Python/web2py_vl/gluon/globals.py", line 95,
> in <lambda>
>     self._caller = lambda f: f()
>   File
> "/home/kra/Evolve/Works/Python/web2py_vl/applications/init/controllers/mana 
> ge.py",
> line 28, in clean
>     x = reduce((lambda x, y: x|y), map((lambda x: db(~db.languages.id ==
> x).select()), lst))
>   File
> "/home/kra/Evolve/Works/Python/web2py_vl/applications/init/controllers/mana 
> ge.py",
> line 28, in <lambda>
>     x = reduce((lambda x, y: x|y), map((lambda x: db(~db.languages.id ==
> x).select()), lst))
>   File "/home/kra/Evolve/Works/Python/web2py_vl/gluon/dal.py", line 4511, in
> select
>     return self.db._adapter.select(self.query,fields,attributes)
>   File "/home/kra/Evolve/Works/Python/web2py_vl/gluon/dal.py", line 1003, in
> select
>     rows = response(sql)
>   File "/home/kra/Evolve/Works/Python/web2py_vl/gluon/dal.py", line 994, in
> response
>     self.execute(sql)
>   File "/home/kra/Evolve/Works/Python/web2py_vl/gluon/dal.py", line 1067, in
> execute
>     return self.log_execute(*a, **b)
>   File "/home/kra/Evolve/Works/Python/web2py_vl/gluon/dal.py", line 1064, in
> log_execute
>     return self.cursor.execute(*a,**b)
> OperationalError: near "DESC": syntax error
>
> <class 'sqlite3.OperationalError'>(near "DESC": syntax error)

Reply via email to