Preamble
PostgreSQL random function can be used to return a random number or a random number within a range.
Syntax of the random PostgreSQL function
random( )
Parameters and function arguments
- There are no parameters or arguments for the random function.
Note:
- The random function will return a value from 0 (inclusive) to 1 (excluding), so the value will be in the range >= 0 and <1.
- Use the set seed function to set the initial value for random.
- The random function returns a completely random number if no initial number is set (the initial value is set by the set seed function).
- The random function will return a repeatable sequence of random numbers every time a specific initial value is used (the initial value is set using the set seed function).
Random decimal range
To create a random decimal number between two values (range), you can use the following formula:
SELECT random()*(b-a)+a;
Where a is the smallest number, and b is the largest number for which you want to generate a random number.
SELECT random()*(25-10)+10;
The above formula will generate a random decimal number >= 10 and < 25. (Note: this formula will never return 25 because random will never return 1).
Random range of integers
To create a random integer between two values (range), you can use the following formula:
SELECT floor(random()*(b-a+1))+a;
Where a is the smallest number, and b is the largest number for which you want to generate a random number.
SELECT floor(random()*(25-10+1))+10;
The above formula will generate a random integer from 10 to 25 inclusive.
The random function can be used in the following PostgreSQL versions
PostgreSQL 11, PostgreSQL 10, PostgreSQL 9.6, PostgreSQL 9.5, PostgreSQL 9.4, PostgreSQL 9.3, PostgreSQL 9.2, PostgreSQL 9.1, PostgreSQL 9.0, PostgreSQL 8.4.
Example of a random number
Let’s see how to use the random function in PostgreSQL to generate a random number >= 0 and < 1. For example:
SELECT random();
-Result: 0.0186054138466716
Although the random function will return a value above 0, it will never return a value of 1. It will always return a value below 1.
Example of a random decimal range
Let’s see how to use the PostgreSQL random function to generate a random decimal number between two numbers (i.e.: range).
For example, the next one will generate a random decimal value that >= 1 and < 10 (Note: it will never return 10):
SELECT random()*(10-1)+1;
--Result: 1.40731927193701
In the following example, a random decimal value >= 25 and < 40 will be generated (Note: it will never return 40):
SELECT random()*(40-25)+25;
--Result: 33.7993366038427
Example of a random integer range
Let’s see how to use the random function in PostgreSQL to generate a random integer between two numbers (i.e.: including the range).
For example, the next one will generate a random integer value from 1 to 10:
SELECT floor(random()*(10-1+1))+1;
--Result: 6
In the following example, a random integer value between 25 and 40 will be generated:
SELECT floor(random()*(40-25+1))+25;
--Result: 28
PostgreSQL: Generate 1000 Rows
About Enteros
Enteros offers a patented database performance management SaaS platform. It proactively identifies root causes of complex business-impacting database scalability and performance issues across a growing number of clouds, RDBMS, NoSQL, and machine learning database platforms.
The views expressed on this blog are those of the author and do not necessarily reflect the opinions of Enteros Inc. This blog may contain links to the content of third-party sites. By providing such links, Enteros Inc. does not adopt, guarantee, approve, or endorse the information, views, or products available on such sites.
Are you interested in writing for Enteros’ Blog? Please send us a pitch!
RELATED POSTS
What to Consider for Telecom RevOps with Enteros Cost Estimation, AI SQL, and Cloud FinOps Platform
- 26 March 2026
- Database Performance Management
Introduction The telecommunications sector is experiencing a massive transformation driven by 5G deployment, IoT expansion, edge computing, and data-intensive digital services. Telecom operators are no longer just connectivity providers—they are becoming digital service platforms supporting streaming, enterprise solutions, and real-time applications. As telecom companies scale to meet increasing demand, they face a fundamental challenge: How … Continue reading “What to Consider for Telecom RevOps with Enteros Cost Estimation, AI SQL, and Cloud FinOps Platform”
What to Consider for Growth Management in the Financial Sector with Enteros Cost Estimation and Attribution
Introduction The financial sector is undergoing a rapid transformation fueled by digital banking, real-time payments, AI-driven risk analysis, and data-intensive customer experiences. From global banks to fintech startups, organizations are investing heavily in technology to remain competitive and deliver seamless services. However, as financial institutions scale their digital operations, a critical challenge emerges: How can … Continue reading “What to Consider for Growth Management in the Financial Sector with Enteros Cost Estimation and Attribution”
What to Consider for Growth Management with Enteros Software Performance and AIOps Platform in Tech
- 25 March 2026
- Database Performance Management
Introduction The technology sector is at the forefront of global innovation, powering everything from cloud computing and SaaS platforms to artificial intelligence and real-time digital services. As technology companies scale rapidly, they face increasing pressure to deliver high-performance applications, maintain reliability, and optimize operational costs—all while driving continuous growth. At the core of this challenge … Continue reading “What to Consider for Growth Management with Enteros Software Performance and AIOps Platform in Tech”
How Enteros Database Performance Management Transforms Manufacturing RevOps and Operational Efficiency
Introduction The manufacturing sector is undergoing a rapid digital evolution driven by smart factories, Industrial IoT (IIoT), predictive maintenance, and real-time supply chain optimization. Modern manufacturers rely heavily on data to streamline operations, improve product quality, and respond quickly to market demands. At the core of this transformation lies a complex IT ecosystem powered by … Continue reading “How Enteros Database Performance Management Transforms Manufacturing RevOps and Operational Efficiency”