Search icon
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
Mastering PostgreSQL 15 - Fifth Edition

You're reading from  Mastering PostgreSQL 15 - Fifth Edition

Product type Book
Published in Jan 2023
Publisher Packt
ISBN-13 9781803248349
Pages 522 pages
Edition 5th Edition
Languages
Author (1):
Hans-Jürgen Schönig Hans-Jürgen Schönig
Profile icon Hans-Jürgen Schönig

Table of Contents (16) Chapters

Preface Chapter 1: PostgreSQL 15 Overview Chapter 2: Understanding Transactions and Locking Chapter 3: Making Use of Indexes Chapter 4: Handling Advanced SQL Chapter 5: Log Files and System Statistics Chapter 6: Optimizing Queries for Good Performance Chapter 7: Writing Stored Procedures Chapter 8: Managing PostgreSQL Security Chapter 9: Handling Backup and Recovery Chapter 10: Making Sense of Backups and Replication Chapter 11: Deciding on Useful Extensions Chapter 12: Troubleshooting PostgreSQL Chapter 13: Migrating to PostgreSQL Index Other Books You May Enjoy

Writing your own aggregates

In this book, you will learn about most of the built-in functions provided by PostgreSQL. However, what SQL provides might not be enough for you. The good news is that it is possible to add your own aggregates to the database engine. In this section, you will learn how that can be done.

Creating simple aggregates

For this example, the goal is to solve a very simple problem. If a customer takes a taxi, they usually have to pay for getting in the taxi—for example, €2.50. Now, let’s assume that for each kilometer, the customer has to pay €2.20. The question now is, what is the total price of a trip?

Of course, this example is simple enough to solve without a custom aggregate; however, let’s see how it works. First, some test data needs to be created:

test=# CREATE TABLE t_taxi (trip_id int, km numeric);
CREATE TABLE
test=# INSERT INTO t_taxi
  VALUES (1, 4.0), (1, 3.2), (1, 4.5), (2, 1.9), (2, 4.5);
INSERT...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime}