diff options
| author | David Sanders <shang.xiao.sanders@gmail.com> | 2023-09-20 23:58:23 +1000 |
|---|---|---|
| committer | Natalia <124304+nessita@users.noreply.github.com> | 2023-09-21 13:18:15 -0300 |
| commit | b08f53ff46238301431084b50762a40170d7869d (patch) | |
| tree | eed37a3a7e396248c93c3d22c1508d4d790bf8fd | |
| parent | c70f08c4aa55b097fceb53f68392887d9ac2fd16 (diff) | |
[4.2.x] Refs #34808 -- Doc'd that aggregation functions on empty groups can return None.
Backport of 78b5c9075348aa12da2e024f6ece29d1d652dfdd from main
| -rw-r--r-- | docs/ref/models/querysets.txt | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/docs/ref/models/querysets.txt b/docs/ref/models/querysets.txt index e117cd5849..0d7e9884c3 100644 --- a/docs/ref/models/querysets.txt +++ b/docs/ref/models/querysets.txt @@ -3925,14 +3925,15 @@ documentation to learn how to create your aggregates. currently emulates these features using a text field. Attempts to use aggregation on date/time fields in SQLite will raise ``NotSupportedError``. -.. admonition:: Empty queryset +.. admonition:: Empty querysets or groups - Aggregation functions return ``None`` when used with an empty - ``QuerySet``. For example, the ``Sum`` aggregation function returns ``None`` - instead of ``0`` if the ``QuerySet`` contains no entries. To return another - value instead, pass a value to the ``default`` argument. An exception is - ``Count``, which does return ``0`` if the ``QuerySet`` is empty. ``Count`` - does not support the ``default`` argument. + Aggregation functions return ``None`` when used with an empty ``QuerySet`` + or group. For example, the ``Sum`` aggregation function returns ``None`` + instead of ``0`` if the ``QuerySet`` contains no entries or for any empty + group in a non-empty ``QuerySet``. To return another value instead, define + the ``default`` argument. ``Count`` is an exception to this behavior; it + returns ``0`` if the ``QuerySet`` is empty since ``Count`` does not support + the ``default`` argument. All aggregates have the following parameters in common: |
