How to generate positive random numbers in SQLite

How to generate positive random numbers in SQLite

В SQLite для генерации псевдослучайных значений используется функция RANDOM(). Рассмотрим несколько полезных примеров её использования.

Базовый вызов:

SELECT RANDOM()

вернёт нам случайное число от -9223372036854775808 до +9223372036854775807:

Для ограничения диапазона используется конструкция:

SELECT RANDOM() % N

так, например, чтобы сгенерировать случайные числа до 100:

SELECT RANDOM() % 100

В этом примере будут сгенерированы числа диапазоне от -100 до 100. Чтобы сгенерировать только положительные числа возмём абсолютное значение ABS():

SELECT ABS(RANDOM() % 100)

Для того, чтобы задать верхнюю и нижнюю границу:

SELECT ABS(RANDOM()) % (HIGH - LOW) + LOW

HIGH - верхняя граница, LOW - нижняя граница