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
Intelligent Healthcare Performance Management: Enteros’ AIOps and Cloud FinOps Framework
- 18 December 2025
- Database Performance Management
Introduction Healthcare organizations are under unprecedented pressure to deliver better patient outcomes while managing rising operational costs, increasing regulatory demands, and rapidly expanding digital infrastructure. From electronic health records (EHRs) and telemedicine platforms to clinical analytics, revenue cycle management systems, and AI-assisted diagnostics, modern healthcare relies on highly complex, data-driven technology ecosystems. As these systems … Continue reading “Intelligent Healthcare Performance Management: Enteros’ AIOps and Cloud FinOps Framework”
How Enteros Transforms Retail Performance Management with AI-Driven Cost Estimation
Introduction The retail industry is operating in one of the most demanding digital environments in history. Omnichannel commerce, real-time inventory visibility, hyper-personalized customer journeys, dynamic pricing, and always-on digital storefronts have become non-negotiable expectations. Behind these seamless experiences lies a highly complex IT ecosystem powered by cloud platforms, SaaS databases, analytics engines, and microservices architectures. … Continue reading “How Enteros Transforms Retail Performance Management with AI-Driven Cost Estimation”
Driving Retail Excellence: How Enteros Delivers Intelligent Performance Management for SaaS Database Environments
- 17 December 2025
- Database Performance Management
Introduction The retail industry is evolving faster than any other sector in the digital economy. Omnichannel commerce, real-time inventory visibility, hyper-personalized customer experiences, subscription-based business models, and AI-powered analytics have become table stakes for modern retailers. Behind all of this innovation lies a complex web of SaaS applications, cloud-native platforms, and high-performance databases. Retailers now … Continue reading “Driving Retail Excellence: How Enteros Delivers Intelligent Performance Management for SaaS Database Environments”
Driving Healthcare Growth with Enteros: Optimizing Database Performance and Cloud FinOps for High-Impact Technology Operations
Introduction Healthcare organizations are experiencing a historic shift toward digital-first operations. Electronic Health Records (EHRs), telemedicine platforms, AI-powered diagnostics, patient engagement applications, research databases, and real-time analytics systems are now foundational to modern care delivery. At the heart of this transformation lies one critical dependency: high-performing, cost-efficient, and reliable databases operating at scale. However, as … Continue reading “Driving Healthcare Growth with Enteros: Optimizing Database Performance and Cloud FinOps for High-Impact Technology Operations”