diff options
| author | Nick Pope <nick.pope@flightdataservices.com> | 2020-07-16 23:32:46 +0100 |
|---|---|---|
| committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2020-10-02 06:58:03 +0200 |
| commit | 06c5d3fafc6aeb96387148726713b611aeba7fa1 (patch) | |
| tree | 80a366cad2aa8caf22062d6eb5f4487c36a000e2 /django/db/backends/sqlite3/base.py | |
| parent | f87b0ecd37e64e7a019d472de37d0789a8790f1f (diff) | |
Fixed #32060 -- Added Random database function.
Diffstat (limited to 'django/db/backends/sqlite3/base.py')
| -rw-r--r-- | django/db/backends/sqlite3/base.py | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/django/db/backends/sqlite3/base.py b/django/db/backends/sqlite3/base.py index 8a105d4f35..608a2b2a95 100644 --- a/django/db/backends/sqlite3/base.py +++ b/django/db/backends/sqlite3/base.py @@ -7,6 +7,7 @@ import functools import hashlib import math import operator +import random import re import statistics import warnings @@ -254,6 +255,9 @@ class DatabaseWrapper(BaseDatabaseWrapper): create_deterministic_function('SIN', 1, none_guard(math.sin)) create_deterministic_function('SQRT', 1, none_guard(math.sqrt)) create_deterministic_function('TAN', 1, none_guard(math.tan)) + # Don't use the built-in RANDOM() function because it returns a value + # in the range [2^63, 2^63 - 1] instead of [0, 1). + conn.create_function('RAND', 0, random.random) conn.create_aggregate('STDDEV_POP', 1, list_aggregate(statistics.pstdev)) conn.create_aggregate('STDDEV_SAMP', 1, list_aggregate(statistics.stdev)) conn.create_aggregate('VAR_POP', 1, list_aggregate(statistics.pvariance)) |
