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 | +----------+-----+----------+---------------------------+