server/sources/rql2sql.py
branchstable
changeset 7357 5ad3154a8810
parent 7252 adb1673efa5f
child 7359 40490b9e0a6e
child 7394 d11d88bd08e8
equal deleted inserted replaced
7354:f627ab500fda 7357:5ad3154a8810
   586             # merge conditions
   586             # merge conditions
   587             if lidx < ridx:
   587             if lidx < ridx:
   588                 rconditions.append(condition)
   588                 rconditions.append(condition)
   589             else:
   589             else:
   590                 lconditions.append(condition)
   590                 lconditions.append(condition)
   591         else:
   591         elif louter is None:
   592             if louter is not None:
       
   593                 raise BadRQLQuery()
       
   594             # merge chains
   592             # merge chains
   595             self.outer_chains.remove(lchain)
   593             self.outer_chains.remove(lchain)
       
   594             rchain += lchain
   596             self.mark_as_used_in_outer_join(leftalias)
   595             self.mark_as_used_in_outer_join(leftalias)
   597             rchain += lchain
       
   598             for alias, (aouter, aconditions, achain) in outer_tables.iteritems():
   596             for alias, (aouter, aconditions, achain) in outer_tables.iteritems():
   599                 if achain is lchain:
   597                 if achain is lchain:
   600                     outer_tables[alias] = (aouter, aconditions, rchain)
   598                     outer_tables[alias] = (aouter, aconditions, rchain)
       
   599         else:
       
   600             raise BadRQLQuery()
   601 
   601 
   602     # sql generation helpers ###################################################
   602     # sql generation helpers ###################################################
   603 
   603 
   604     def tables_sql(self, outer_chains=None):
   604     def tables_sql(self, outer_chains=None):
   605         """generate SQL for FROM clause"""
   605         """generate SQL for FROM clause"""