Amazon Redshift will no longer support the use of Python UDFs after June 30, 2026.
We will start enforcing it in phases. For more information on the details of Python end of life
and migration options, see the
blog post
Scalar Python UDF example
The following example creates a function that compares two numbers and returns the larger value. Note that the indentation of the code between the double dollar signs ($$) is a Python requirement. For more information, see CREATE FUNCTION.
create function f_py_greater (a float, b float) returns float stable as $$ if a > b: return a return b $$ language plpythonu;
The following query calls the new f_greater function to query the SALES
table and return either COMMISSION or 20 percent of PRICEPAID, whichever is
greater.
select f_py_greater (commission, pricepaid*0.20) from sales;