Chapter Functions and Operators

Table of Contents

Logical Operators

Comparison Functions and Operators

Mathematical Functions and Operators

String Functions and Operators

 format

Binary String Functions and Operators

Bit String Functions and Operators

Pattern Matching

 LIKE

 SIMILAR TO Regular Expressions

 POSIX Regular Expressions

Data Type Formatting Functions

Date/Time Functions and Operators

 EXTRACT, date_part

 date_trunc

 date_bin

 AT TIME ZONE

 Current Date/Time

 Delaying Execution

Enum Support Functions

Network Address Functions and Operators

UUID Functions

JSON Functions and Operators

 Processing and Creating JSON Data

 The SQL/JSON Path Language

Sequence Manipulation Functions

Conditional Expressions

 CASE

 COALESCE

 NULLIF

 GREATEST and LEAST

Array Functions and Operators

Aggregate Functions

Window Functions

Subquery Expressions

 EXISTS

 IN

 NOT IN

 ANY/SOME

 ALL

 Single-Row Comparison

Row and Array Comparisons

 IN

 NOT IN

 ANY/SOME (array)

 ALL (array)

 Row Constructor Comparison

 Composite Type Comparison

Set Returning Functions

System Information Functions and Operators

System Administration Functions

 Configuration Settings Functions

 Server Signaling Functions

ProtonBase provides a large number of functions and operators for the built-in data types. This chapter describes most of them, although additional special-purpose functions appear in relevant sections of the manual. The psql commands \df and \do can be used to list all available functions and operators, respectively.

The notation used throughout this chapter to describe the argument and result data types of a function or operator is like this:

repeat ( text, integer ) → text

which says that the function repeat takes one text and one integer argument and returns a result of type text. The right arrow is also used to indicate the result of an example, thus:

repeat('Pg', 4) → PgPgPgPg

If you are concerned about portability then note that most of the functions and operators described in this chapter, with the exception of the most trivial arithmetic and comparison operators and some explicitly marked functions, are not specified by the SQL standard. Some of this extended functionality is present in other SQL database management systems, and in many cases this functionality is compatible and consistent between the various implementations.