SQL - DEGREES() Function



The SQL DEGREES() function accepts a numeric value (representing in radians) as an argument and converts it to an approximately equivalent angle measured in degrees.

A degree, or degree of arc is a unit of measurement for a plane angle, where one full revolution equals 360 degrees. It is typically represented by the symbol ℃ (the degree symbol). Although it is not a SI unit, the radian is the SI unit of angular measure. It is mentioned as an approved unit in the SI brochure.

Syntax

Following is the syntax of SQL DEGREES() function −

DEGREES(x)

where, x is the number/angle specified in radians.

Example

In the following example we are trying to find the degree value of 180 radian:

SELECT DEGREES(180) 
AS degree_value

When we run above program, it produces following result −

+--------------+
| degree_Value |
+--------------+
| 10313        |
+--------------+

Example

In here, we are passing a negative value i.e. -90 radian as an argument to the function −

SELECT DEGREES(-90) 
AS degree_value

While executing the above code we get the following output −

+--------------+
| degree_Value |
+--------------+
| -5156        |
+--------------+

Example

Now, we are trying to pass the radians to this function as a string.

SELECT DEGREES('4565776') 
AS degree_value

Following is an output of the above code −

+------------------+
| degree_Value     |
+------------------+
| 261599695.002123 |
+------------------+

Example

We can also pass the mathematical constant PI as an argument to this function, it returns it's equivalent degree value.

SELECT DEGREES(PI()) 
AS degree_value

Output of the above code is as follows −

+--------------+
| degree_Value |
+--------------+
| 180          |
+--------------+

Example

Assume we have created a table with name CUSTOMERS as shown below −

create table CUSTOMERS(ID INT NOT NULL, 
NAME VARCHAR(20) NOT NULL, 
AGE INT NOT NULL, ADDRESS CHAR(25), 
SALARY DECIMAL(18, 2),
PRIMARY KEY(ID));
Commands completed successfully.

Let us insert r values into it −

insert INTO CUSTOMERS VALUES(1, 'Ramesh', 32, 'Ahmedabad', 2000.00);
insert INTO CUSTOMERS VALUES(2, 'Khilan', 25, 'Delhi', 1500.00);
insert INTO CUSTOMERS VALUES(3, 'kaushik', 23, 'Kota', 2000.00);
insert INTO CUSTOMERS VALUES(4, 'Chaitali', 25, 'Mumbai', 6500.00);
insert INTO CUSTOMERS VALUES(5, 'Hardik', 27, 'Bhopal', 8500.00);
insert INTO CUSTOMERS VALUES(6, 'Komal', 22, 'MP', 4500.00);
insert INTO CUSTOMERS VALUES(7, 'Muffy', 24, 'Indore', 10000.00);

Following query calculates the degree value of the salary of all the customers −

SELECT NAME, AGE, SALARY,
DEGREES(SALARY) 
AS degree_salaryvalue
FROM CUSTOMERS

The result produced is as follows −

+----------+-----+----------+---------------------------+
| NAME     | AGE | SALARY   | degree_salaryvalue        |
+----------+-----+----------+---------------------------+
| Ramesh   |  32 |  2000.00 | 114591.559026164643000811 |
| Khilan   |  25 |  1500.00 | 85943.669269623482250609  |
| kaushik  |  23 |  2000.00 | 114591.559026164643000811 |
| Chaitali |  25 |  6500.00 | 372422.566835035104304552 |
| Hardik   |  27 |  8500.00 | 487014.125861199747305363 |
| Komal    |  22 |  4500.00 | 257831.007808870461303741 |
| Muffy    |  24 | 10000.00 | 572957.795130823273211718 |
+----------+-----+----------+---------------------------+
sql-numeric-functions.htm
Advertisements