class CombinedExpression(SQLiteNumericMixin, Expression):
Known subclasses: django.contrib.postgres.search.CombinedSearchQuery
, django.contrib.postgres.search.CombinedSearchVector
, django.db.models.expressions.DurationExpression
, django.db.models.expressions.TemporalSubtraction
Undocumented
Method | __init__ |
Undocumented |
Method | __repr__ |
Undocumented |
Method | __str__ |
Undocumented |
Method | _resolve_output_field |
Attempt to infer the output type of the expression. If the output fields of all source fields match then, simply infer the same type here. This isn't always correct, but it makes sense most of the time. |
Method | as_sql |
Responsible for returning a (sql, [params]) tuple to be included in the current query. |
Method | get_source_expressions |
Undocumented |
Method | resolve_expression |
Provide the chance to do any preprocessing or validation before being added to the query. |
Method | set_source_expressions |
Undocumented |
Instance Variable | connector |
Undocumented |
Instance Variable | lhs |
Undocumented |
Instance Variable | rhs |
Undocumented |
Inherited from SQLiteNumericMixin
:
Method | as_sqlite |
Undocumented |
Inherited from Expression
:
Method | __eq__ |
Undocumented |
Method | __hash__ |
Undocumented |
Property | identity |
Undocumented |
Inherited from BaseExpression
(via Expression
):
Static Method | _convert_value_noop |
Undocumented |
Method | __getstate__ |
Undocumented |
Method | _parse_expressions |
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_group_by_cols |
Undocumented |
Method | get_lookup |
Undocumented |
Method | get_source_fields |
Return the underlying field types used by this aggregate. |
Method | get_transform |
Undocumented |
Method | relabeled_clone |
Undocumented |
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 | _output_field_resolved_to_none |
Undocumented |
Class Variable | filterable |
Undocumented |
Class Variable | is_summary |
Undocumented |
Class Variable | window_compatible |
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. |
Property | conditional |
Undocumented |
Property | contains_aggregate |
Undocumented |
Property | contains_column_references |
Undocumented |
Property | contains_over_clause |
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. |
Inherited from Combinable
(via Expression
):
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 | __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 | __sub__ |
Undocumented |
Method | __truediv__ |
Undocumented |
Method | _combine |
Undocumented |
Method | bitand |
Undocumented |
Method | bitleftshift |
Undocumented |
Method | bitor |
Undocumented |
Method | bitrightshift |
Undocumented |
Method | bitxor |
Undocumented |
Attempt to infer the output type of the expression. If the output fields of all source fields match then, simply infer the same type here. This isn't always correct, but it makes sense most of the time.
Consider the difference between 2 + 2
and 2 / 3
. Inferring
the type here is a convenience for the common case. The user should
supply their own output_field with more complex computations.
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.
django.db.models.expressions.DurationExpression
, django.db.models.expressions.TemporalSubtraction
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) ```
value
.sql
is a string containing ordered sql parameters to be
replaced with the elements of the list params
.Provide the chance to do any preprocessing or validation before being added to the query.
Return: an Expression to be added to the query.