server/sources/rql2sql.py
branchstable
changeset 3736 07196bda2456
parent 3689 deb13e88e037
child 3752 4c77a1653374
equal deleted inserted replaced
3719:7547fe738e54 3736:07196bda2456
   105                 var.stinfo['relations'].add(newrel)
   105                 var.stinfo['relations'].add(newrel)
   106                 var.stinfo['rhsrelations'].add(newrel)
   106                 var.stinfo['rhsrelations'].add(newrel)
   107                 if rel.optional in ('right', 'both'):
   107                 if rel.optional in ('right', 'both'):
   108                     var.stinfo['optrelations'].add(newrel)
   108                     var.stinfo['optrelations'].add(newrel)
   109         # extract subquery solutions
   109         # extract subquery solutions
   110         solutions = [sol.copy() for sol in solutions]
   110         mysolutions = [sol.copy() for sol in solutions]
   111         cleanup_solutions(newselect, solutions)
   111         cleanup_solutions(newselect, mysolutions)
   112         newselect.set_possible_types(solutions)
   112         newselect.set_possible_types(solutions)
   113         # full sub-query
   113         # full sub-query
   114         aliases = [VariableRef(select.get_variable(avar.name, i))
   114         aliases = [VariableRef(select.get_variable(avar.name, i))
   115                    for i, avar in enumerate(newselect.selection)]
   115                    for i, avar in enumerate(newselect.selection)]
   116         select.add_subquery(SubQuery(aliases, myunion), check=False)
   116         select.add_subquery(SubQuery(aliases, myunion), check=False)