An SQL WHERE clause. The class is tied to the Query class that created it (in order to create the correct SQL). A child is usually an expression producing boolean values. Most likely the expression is a Lookup instance. However, a child could also be any class with as_sql() and either relabeled_clone() method or relabel_aliases() and clone() methods and contains_aggregate attribute.
Method | as |
Return the SQL version of the where clause and the value to be substituted in. Return '', [] if this node matches everything, None, [] if this node is empty, and raise EmptyResultSet if this node can't match anything. |
Method | clone |
Create a clone of the tree. Must only be called on root nodes (nodes with empty subtree_parents). Childs must be either (Constraint, lookup, value) tuples, or objects supporting .clone(). |
Method | copy |
Undocumented |
Method | get |
Undocumented |
Method | get |
Undocumented |
Method | get |
Undocumented |
Method | get |
Undocumented |
Method | relabel |
Relabel the alias values of any children. 'change_map' is a dictionary mapping old (current) alias values to the new values. |
Method | relabeled |
Undocumented |
Method | resolve |
Undocumented |
Method | select |
Undocumented |
Method | set |
Undocumented |
Method | split |
Return two possibly None nodes: one for those parts of self that should be included in the WHERE clause and one for those parts of self that must be included in the HAVING clause. |
Class Variable | conditional |
Undocumented |
Class Variable | resolved |
Undocumented |
Instance Variable | children |
Undocumented |
Property | contains |
Undocumented |
Property | contains |
Undocumented |
Property | output |
Undocumented |
Class Method | _contains |
Undocumented |
Class Method | _contains |
Undocumented |
Class Method | _resolve |
Undocumented |
Static Method | _resolve |
Undocumented |
Inherited from Node
:
Method | __bool__ |
Return whether or not this node has children. |
Method | __contains__ |
Return True if 'other' is a direct child of this instance. |
Method | __deepcopy__ |
Undocumented |
Method | __eq__ |
Undocumented |
Method | __hash__ |
Undocumented |
Method | __init__ |
Construct a new Node. If no connector is given, use the default. |
Method | __len__ |
Return the number of children this node has. |
Method | __repr__ |
Undocumented |
Method | __str__ |
Undocumented |
Method | add |
Combine this tree and the data represented by data using the connector conn_type. The combine is done by squashing the node other away if possible. |
Method | negate |
Negate the sense of the root connector. |
Class Variable | default |
Undocumented |
Instance Variable | connector |
Undocumented |
Instance Variable | negated |
Undocumented |
Class Method | _new |
Create a new instance of this class when new Nodes (or subclasses) are needed in the internal code in this class. Normally, it just shadows __init__(). However, subclasses with an __init__ signature that aren't an extension of Node... |
Return the SQL version of the where clause and the value to be substituted in. Return '', [] if this node matches everything, None, [] if this node is empty, and raise EmptyResultSet if this node can't match anything.
Create a clone of the tree. Must only be called on root nodes (nodes with empty subtree_parents). Childs must be either (Constraint, lookup, value) tuples, or objects supporting .clone().
Relabel the alias values of any children. 'change_map' is a dictionary mapping old (current) alias values to the new values.