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/manage.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/manage.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/manage.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