Мне нужно отобрать случайную выборку из 1% записей в таблице (количество строк увеличивается каждую секунду).
Моя идея состоит в том, чтобы
SELECT DISTINCT
random(),
name,
age,
registrationNumber
FROM everGrowingTable
ORDER BY random desc
LIMIT (
(select count(*) from everGrowingTable) * 0.01
) -- this is attempting to get 1%
Компилятор жалуется на оператор *
.Вполне нормально, когда я жестко кодирую размер таблицы.
Я пробовал Документация IBM , но это говорит о вычислениях с использованием известных значений, а не значений, которые растут (так обстоит дело в случаемоя таблица)
Кажется, что нет функции Aginity SQL, которая делает это.Я заметил функцию MINUS в IntelliSense Aginity Workbench, но, увы, нет эквивалента умножения.