class documentation

Undocumented

Method __init__ Undocumented
Method __repr__ Undocumented
Method __str__ Undocumented
Method as_sql Responsible for returning a (sql, [params]) tuple to be included in the current query.
Method as_sqlite Undocumented
Method get_group_by_cols Undocumented
Method get_source_expressions Undocumented
Method set_source_expressions Undocumented
Class Variable contains_aggregate Undocumented
Class Variable contains_over_clause Undocumented
Class Variable filterable Undocumented
Class Variable template Undocumented
Instance Variable frame Undocumented
Instance Variable order_by Undocumented
Instance Variable partition_by Undocumented
Instance Variable source_expression Undocumented
Method _resolve_output_field Attempt to infer the output type of the expression.

Inherited from Expression (via SQLiteNumericMixin):

Method __eq__ Undocumented
Method __hash__ Undocumented
Property identity Undocumented

Inherited from BaseExpression (via SQLiteNumericMixin, Expression):

Method __getstate__ Undocumented
Method asc Undocumented
Method copy Undocumented
Method desc Undocumented
Method flatten Recursively yield this expression and all subexpressions, in depth-first order.
Method get_db_converters Undocumented
Method get_lookup Undocumented
Method get_source_fields Return the underlying field types used by this aggregate.
Method get_transform Undocumented
Method prefix_references Undocumented
Method relabeled_clone Undocumented
Method replace_references Undocumented
Method resolve_expression Provide the chance to do any preprocessing or validation before being added to the query.
Method reverse_ordering Undocumented
Method select_format Custom format for select clauses. For example, EXISTS expressions need to be wrapped in CASE WHEN on Oracle.
Class Variable is_summary Undocumented
Class Variable window_compatible Undocumented
Property conditional Undocumented
Property contains_column_references Undocumented
Property convert_value Expressions provide their own converters because users have the option of manually specifying the output_field which may be a different type from the one the database returns.
Property field Undocumented
Property output_field Return the output type of this expressions.
Static Method _convert_value_noop Undocumented
Method _parse_expressions Undocumented
Class Variable _output_field_resolved_to_none Undocumented
Property _output_field_or_none Return the output field of this expression, or None if _resolve_output_field() didn't return an output type.

Inherited from Combinable (via SQLiteNumericMixin, Expression, BaseExpression):

Method __add__ Undocumented
Method __and__ Undocumented
Method __mod__ Undocumented
Method __mul__ Undocumented
Method __neg__ Undocumented
Method __or__ Undocumented
Method __pow__ Undocumented
Method __radd__ Undocumented
Method __rand__ Undocumented
Method __rmod__ Undocumented
Method __rmul__ Undocumented
Method __ror__ Undocumented
Method __rpow__ Undocumented
Method __rsub__ Undocumented
Method __rtruediv__ Undocumented
Method __rxor__ Undocumented
Method __sub__ Undocumented
Method __truediv__ Undocumented
Method __xor__ Undocumented
Method bitand Undocumented
Method bitleftshift Undocumented
Method bitor Undocumented
Method bitrightshift Undocumented
Method bitxor Undocumented
Constant ADD Undocumented
Constant BITAND Undocumented
Constant BITLEFTSHIFT Undocumented
Constant BITOR Undocumented
Constant BITRIGHTSHIFT Undocumented
Constant BITXOR Undocumented
Constant DIV Undocumented
Constant MOD Undocumented
Constant MUL Undocumented
Constant POW Undocumented
Constant SUB Undocumented
Method _combine Undocumented
def __init__(self, expression, partition_by=None, order_by=None, frame=None, output_field=None): (source)
def __repr__(self): (source)

Undocumented

def __str__(self): (source)

Undocumented

def as_sql(self, compiler, connection, template=None): (source)

Responsible for returning a (sql, [params]) tuple to be included in the current query. Different backends can provide their own implementation, by providing an `as_{vendor}` method and patching the Expression: ``` def override_as_sql(self, compiler, connection): # custom logic return super().as_sql(compiler, connection) setattr(Expression, 'as_' + connection.vendor, override_as_sql) ``` Arguments: * compiler: the query compiler responsible for generating the query. Must have a compile method, returning a (sql, [params]) tuple. Calling compiler(value) will return a quoted `value`. * connection: the database connection used for the current query. Return: (sql, params) Where `sql` is a string containing ordered sql parameters to be replaced with the elements of the list `params`.

def as_sqlite(self, compiler, connection): (source)
def get_group_by_cols(self, alias=None): (source)
def get_source_expressions(self): (source)
def set_source_expressions(self, exprs): (source)
template: str = (source)

Undocumented

Undocumented

order_by = (source)

Undocumented

partition_by = (source)

Undocumented

source_expression = (source)

Undocumented

def _resolve_output_field(self): (source)

Attempt to infer the output type of the expression. As a guess, if the output fields of all source fields match then simply infer the same type here. If a source's output field resolves to None, exclude it from this check. If all sources are None, then an error is raised higher up the stack in the output_field property.