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
How Enteros Powers Telecom Growth with AI Performance Management and Cloud FinOps
- 9 March 2026
- Database Performance Management
Introduction The telecommunications industry is at the center of global digital transformation. From 5G rollouts and edge computing to streaming services, IoT connectivity, and real-time communication platforms, telecom companies are managing massive volumes of data and increasingly complex infrastructure. Behind every telecom service—voice calls, messaging, video streaming, mobile apps, and connected devices—there is a sophisticated … Continue reading “How Enteros Powers Telecom Growth with AI Performance Management and Cloud FinOps”
Eliminating Healthcare Data Bottlenecks: Enteros Database Software with AI SQL Root Cause Analysis
Introduction Healthcare organizations are under unprecedented pressure to deliver faster, smarter, and more reliable digital services. From electronic health records (EHR) and telemedicine platforms to AI-driven diagnostics and real-time patient monitoring, the healthcare ecosystem depends heavily on robust data infrastructure. At the center of this infrastructure are databases that store and process critical patient, clinical, … Continue reading “Eliminating Healthcare Data Bottlenecks: Enteros Database Software with AI SQL Root Cause Analysis”
How Enteros Transforms Financial Database Management with Predictive Cost Estimation
- 8 March 2026
- Database Performance Management
Introduction The financial sector is experiencing rapid digital transformation. From real-time trading platforms and digital banking applications to AI-driven risk analytics and regulatory reporting systems, financial institutions rely heavily on high-performance data infrastructure. At the heart of this infrastructure are databases that process enormous volumes of transactions, analytics workloads, and customer interactions every second. As … Continue reading “How Enteros Transforms Financial Database Management with Predictive Cost Estimation”
How to Align Insurance Growth Strategy with Database Performance and RevOps Intelligence
Introduction The insurance industry is undergoing a profound transformation. Digital policy management, real-time underwriting, AI-powered risk assessment, and omnichannel customer engagement are reshaping how insurers compete and grow. As organizations scale their digital capabilities, a critical yet often overlooked factor emerges: database performance and operational intelligence. Every insurance operation—from policy issuance and claims processing to … Continue reading “How to Align Insurance Growth Strategy with Database Performance and RevOps Intelligence”