Generate Random Integers, Including Negative Numbers

Posted August 6, 2018 by Sarah Lemaire, Manager, Vertica Documentation

Database Server Room
Jim Knicely authored this tip. The RANDOMINT(n) function returns one of the n integers from 0 through n – 1. Those are all positive integers. What if I want to include negative integers? That’s easy with a simple multiplication. Example: dbadmin=> SELECT DECODE(randomint(2), 1, 1, -1) * randomint(11) "Random INT from -10 to 10"; Random INT from -10 to 10 --------------------------- -1 (1 row) dbadmin=> SELECT DECODE(randomint(2), 1, 1, -1) * randomint(11) “Random INT from -10 to 10”; Random INT from -10 to 10 ————————— 3 (1 row) dbadmin=> SELECT DECODE(randomint(2), 1, 1, -1) * randomint(11) “Random INT from -10 to 10”; Random INT from -10 to 10 ————————— -7 (1 row) dbadmin=> SELECT DECODE(randomint(2), 1, 1, -1) * randomint(11) “Random INT from -10 to 10”; Random INT from -10 to 10 ————————— 9 (1 row) Have fun!