# Identifying Triangle

Write a query identifying the\_type\_of each record in the**TRIANGLES** table using its three side lengths. Output one of the following statements for each record in the table:

* **Equilateral**

  : It's a triangle with 3 sides of equal length.
* **Isosceles**

  : It's a triangle with 2 sides of equal length.
* **Scalene**

  : It's a triangle with 3 sides of differing lengths.
* **Not A Triangle**

  : The given values of *A*, *B*, and \_C \_don't form a triangle.

**Input Format**

The**TRIANGLES**table is described as follows:

![](https://s3.amazonaws.com/hr-challenge-images/12887/1443815629-ac2a843fb7-1.png)

Each row in the table denotes the lengths of each of a triangle's three sides.

**Sample Input**

![](https://s3.amazonaws.com/hr-challenge-images/12887/1443815827-cbfc1ca12b-2.png)

**Sample Output**

```
Isosceles
Equilateral
Scalene
Not A Triangle
```

**Explanation**

Values in the tuple $$(20, 20, 23)$$ form an Isosceles triangle, because $$A \equiv B$$.

Values in the tuple $$(20,20,20)$$ form an Equilateral triangle, because $$A \equiv B \equiv C$$.

Values in the tuple $$(20, 21, 22)$$ form a Scalene triangle, because $$A \not= B \not= C$$.

Values in the tuple $$(13,14,30)$$ cannot form a triangle because the combined value of sides $$A$$ and $$B$$ is not larger than that of side $$C$$.

**Thoughts:**

1. Ideas from [**GeeksforGeeks**](https://www.geeksforgeeks.org/classify-a-triangle/)

**Code**&#x20;

```sql
SELECT 
CASE WHEN A + B > C AND A+C>B AND B+C>A 
THEN CASE WHEN A = B AND B = C 
THEN 'Equilateral' WHEN A = B OR B = C OR A = C 
THEN 'Isosceles' WHEN A != B OR B != C OR A != C 
THEN 'Scalene' END ELSE 'Not A Triangle' 
END 
FROM TRIANGLES;
```
