SQRT is a square root function. It is used to calculate the square root of a number. With number as the input parameter, it returns the corresponding square root.
Syntax
double|decimal sqrt(<number>)Parameters
number: required. The input parameter must be of the DOUBLE or DECIMAL type and must be greater than 0. Otherwise, NULL is returned. If the input parameter is of the STRING or BIGINT type, it is implicitly converted into a value of the DOUBLE type before calculation.
Return value
A value of the DOUBLE or DECIMAL type is returned. The return value varies based on the following rules:
If number is of the DOUBLE or DECIMAL type, a value of the corresponding type is returned.
If number is of the STRING or BIGINT type, a value of the DOUBLE type is returned.
If number is NULL, NULL is returned.
Sample data
This section provides sample source data and examples for you to understand how to use the function. In this topic, a table named mf_math_fun_t is created and data is inserted into the table. Sample statements:
create table if not exists mf_math_fun_t(
int_data int,
bigint_data bigint,
double_data double,
decimal_data decimal,
float_data float,
string_data string
);
insert into mf_math_fun_t values
(null, -10, 0.525, 0.525BD, cast(0.525 as float), '10'),
(-20, null, -0.1, -0.1BD, cast(-0.1 as float), '-10'),
(0, -1, null, 20.45BD, cast(-1 as float), '30'),
(-40, 4, 0.89, null, cast(0.89 as float), '-30'),
(5, -50, -1, -1BD, null, '50'),
(-60, 6, 1.5, 1.5BD, cast(1.5 as float), '-50'),
(-1, -70, -7.5, -7.5BD, cast(-7.5 as float),null ),
(-80, 1, -10.2, -10.2BD, cast(-10.2 as float), '-1' ),
(9, -90, 2.58, 2.58BD, cast(2.58 as float), '0'),
(-100, 10, -5.8, -5.8BD, cast(-5.8 as float), '-90');Query data from the mf_math_fun_t table. Sample statement:
select * from mf_math_fun_t;
-- The following result is returned:
+------------+-------------+-------------+--------------+------------+-------------+
| int_data | bigint_data | double_data | decimal_data | float_data | string_data |
+------------+-------------+-------------+--------------+------------+-------------+
| NULL | -10 | 0.525 | 0.525 | 0.525 | 10 |
| -20 | NULL | -0.1 | -0.1 | -0.1 | -10 |
| 0 | -1 | NULL | 20.45 | -1.0 | 30 |
| -40 | 4 | 0.89 | NULL | 0.89 | -30 |
| 5 | -50 | -1.0 | -1 | NULL | 50 |
| -60 | 6 | 1.5 | 1.5 | 1.5 | -50 |
| -1 | -70 | -7.5 | -7.5 | -7.5 | NULL |
| -80 | 1 | -10.2 | -10.2 | -10.2 | -1 |
| 9 | -90 | 2.58 | 2.58 | 2.58 | 0 |
| -100 | 10 | -5.8 | -5.8 | -5.8 | -90 |
+------------+-------------+-------------+--------------+------------+-------------+Example: static data
-- The return value is 2.0.
select sqrt(4);
-- The return value is null.
select sqrt(null);Example: table data
Calculate the square root of values in a column based on the sample data. Sample statement:
select sqrt(bigint_data) as bigint_new, sqrt(double_data) as double_new, sqrt(decimal_data) as decimal_new, sqrt(string_data) as string_new from mf_math_fun_t;The following result is returned:
+--------------------+--------------------+-------------------+--------------------+
| bigint_new | double_new | decimal_new | string_new |
+--------------------+--------------------+-------------------+--------------------+
| NULL | 0.724568837309472 | 0.724568837309472 | 3.1622776601683795 |
| NULL | NULL | NULL | NULL |
| NULL | NULL | 4.522167621838006 | 5.477225575051661 |
| 2.0 | 0.9433981132056604 | NULL | NULL |
| NULL | NULL | NULL | 7.0710678118654755 |
| 2.449489742783178 | 1.224744871391589 | 1.224744871391589 | NULL |
| NULL | NULL | NULL | NULL |
| 1.0 | NULL | NULL | NULL |
| NULL | 1.606237840420901 | 1.606237840420901 | 0.0 |
| 3.1622776601683795 | NULL | NULL | NULL |
+--------------------+--------------------+-------------------+--------------------+Related functions
SQRT is a mathematical function. For more information about functions related to data computing and conversion, see Mathematical functions.