Create a SQL Function to Calculate the nth Root of a Number

Vertica has a built-in function to calculate the arithmetic square root a number called SQRT and another built-in function to calculate the arithmetic cube root…

OpenText  profile picture
OpenText

February 27, 20191 min read

Vertica has a built-in function to calculate the arithmetic square root a number called SQRT and another built-in function to calculate the arithmetic cube root of a number called CBRT.

Example:

dbadmin=> SELECT sqrt(9);
sqrt
------
3
(1 row)

dbadmin=> SELECT cbrt(27);
cbrt
------
3
(1 row)

But what if I need a function to calculate the arithmetic nth root of a number? No problem. I can create my own!

dbadmin=> CREATE OR REPLACE FUNCTION nrt (x FLOAT, y FLOAT) RETURN FLOAT
dbadmin-> AS
dbadmin-> BEGIN
dbadmin-> RETURN POWER(x,(1/y));
dbadmin->
dbadmin-> END;
CREATE FUNCTION

dbadmin=> SELECT nrt(390625, 4);
nrt
-----
25
(1 row)

dbadmin=> SELECT nrt(256, 4);
nrt
-----
4
(1 row)

dbadmin=> SELECT nrt(27, 3);
nrt
-----
3
(1 row)

dbadmin=> SELECT nrt(9, 2);
nrt
-----
3
(1 row)

Share this post

Share this post to x. Share to linkedin. Mail to
OpenText avatar image

OpenText

OpenText, The Information Company, enables organizations to gain insight through market-leading information management solutions, powered by OpenText Cloud Editions.

See all posts

More from the author

Limitless: What it means for innovation

Limitless: What it means for innovation

AI paves the way to the future

July 04, 2025

3 min read

Limitless: What it means for peace of mind

Limitless: What it means for peace of mind

Rest easy with AI-driven security

July 04, 2025

3 min read

Limitless: What it means for productivity

Limitless: What it means for productivity

AI elevates human potential

July 04, 2025

3 min read

Stay in the loop!

Get our most popular content delivered monthly to your inbox.