class Extract(TimezoneMixin, Transform):
Known subclasses: django.db.models.functions.ExtractDay
, django.db.models.functions.ExtractHour
, django.db.models.functions.ExtractIsoWeekDay
, django.db.models.functions.ExtractIsoYear
, django.db.models.functions.ExtractMinute
, django.db.models.functions.ExtractMonth
, django.db.models.functions.ExtractQuarter
, django.db.models.functions.ExtractSecond
, django.db.models.functions.ExtractWeek
, django.db.models.functions.ExtractWeekDay
, django.db.models.functions.ExtractYear
Undocumented
Method | __init__ |
Undocumented |
Method | as_sql |
Responsible for returning a (sql, [params]) tuple to be included in the current query. |
Method | resolve_expression |
Provide the chance to do any preprocessing or validation before being added to the query. |
Class Variable | output_field |
Return the output type of this expressions. |
Instance Variable | lookup_name |
Undocumented |
Instance Variable | tzinfo |
Undocumented |
Inherited from TimezoneMixin
:
Method | get_tzname |
Undocumented |
Inherited from Transform
:
Method | get_bilateral_transforms |
Undocumented |
Class Variable | arity |
Undocumented |
Class Variable | bilateral |
Undocumented |
Property | lhs |
Undocumented |
Inherited from RegisterLookupMixin
(via Transform
):
Class Method | get_lookups |
Undocumented |
Class Method | register_lookup |
Undocumented |
Static Method | merge_dicts |
Merge dicts in reverse to preference the order of the original list. e.g., merge_dicts([a, b]) will preference the keys in 'a' over those in 'b'. |
Class Method | _clear_cached_lookups |
Undocumented |
Class Method | _get_lookup |
Undocumented |
Class Method | _unregister_lookup |
Remove given lookup from cls lookups. For use in tests only as it's not thread-safe. |
Method | get_lookup |
Undocumented |
Method | get_transform |
Undocumented |
Inherited from Func
(via Transform
):
Method | __repr__ |
Undocumented |
Method | _get_repr_options |
Return a dict of extra __init__() options to include in the repr. |
Method | copy |
Undocumented |
Method | get_source_expressions |
Undocumented |
Method | set_source_expressions |
Undocumented |
Class Variable | arg_joiner |
Undocumented |
Class Variable | function |
Undocumented |
Class Variable | template |
Undocumented |
Instance Variable | extra |
Undocumented |
Instance Variable | source_expressions |
Undocumented |
Inherited from SQLiteNumericMixin
(via Transform
, Func
):
Method | as_sqlite |
Undocumented |
Inherited from Expression
(via Transform
, Func
):
Method | __eq__ |
Undocumented |
Method | __hash__ |
Undocumented |
Property | identity |
Undocumented |
Inherited from BaseExpression
(via Transform
, Func
, Expression
):
Static Method | _convert_value_noop |
Undocumented |
Method | __getstate__ |
Undocumented |
Method | _parse_expressions |
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 | asc |
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 |
Inherited from Combinable
(via Transform
, Func
, 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 |
django.db.models.expressions.Func.as_sql
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.
django.db.models.functions.ExtractDay
, django.db.models.functions.ExtractHour
, django.db.models.functions.ExtractIsoWeekDay
, django.db.models.functions.ExtractIsoYear
, django.db.models.functions.ExtractMinute
, django.db.models.functions.ExtractMonth
, django.db.models.functions.ExtractQuarter
, django.db.models.functions.ExtractSecond
, django.db.models.functions.ExtractWeek
, django.db.models.functions.ExtractWeekDay
, django.db.models.functions.ExtractYear
Undocumented