def expr_to_str(n, l=None):
op = n[<NUM_LIT:0>]<EOL>if op.startswith('<STR_LIT:_>') and op.endswith('<STR_LIT:_>'):<EOL><INDENT>op = op.strip('<STR_LIT:_>')<EOL>if op == '<STR_LIT>':<EOL><INDENT>return n[<NUM_LIT:1>]<EOL><DEDENT>elif op == '<STR_LIT>':<EOL><INDENT>if isinstance(n[<NUM_LIT:1>], str):<EOL><INDENT>return "<STR_LIT>" % n[<NUM_LIT:1>]<EOL><DEDENT>return str(n[<NUM_LIT:1>])<EOL><DEDENT>elif op == '<STR_LIT>':<EOL><INDENT>return "<STR_LIT>" % (expr_to_str(n[<NUM_LIT:1>]), n[<NUM_LIT:2>])<EOL><DEDENT><DEDENT>elif op in '<STR_LIT>':<EOL><INDENT>return "<STR_LIT>" % (expr_to_str(n[<NUM_LIT:1>]), op, expr_to_str(n[<NUM_LIT:2>]))<EOL><DEDENT>elif op == "<STR_LIT>":<EOL><INDENT>return "<STR_LIT>" % (n[<NUM_LIT:1>], expr_to_str(n[<NUM_LIT:2>]))<EOL><DEDENT>else:<EOL><INDENT>arg = '<STR_LIT:U+002C>'.join(map(expr_to_str, n[<NUM_LIT:1>:]))<EOL>return "<STR_LIT>" % (op, arg)<EOL><DEDENT>
construct SQL string from expression node