sql notes: leetcode#610 triangle judgement

Problem


A pupil Tim gets homework to identify whether three line segments could possibly form a triangle.

However, this assignment is very heavy because there are hundreds of records to calculate.
Could you help Tim by writing a query to judge whether these three sides can form a triangle, assuming table triangle holds the length of the three sides x, y and z.

x y z
13 15 30
10 20 15

For the sample data above, your query should return the follow result:

x y z triangle
13 15 30 No
10 20 15 Yes

Analysis


Use IF() function to check whether three sides can form a triangle. If x, y, z can form a triangle, return ‘Yes’, otherwise ‘No’.

Solution


1
SELECT x, y, z, IF(x+y>z AND x+z>y AND y+z>x, 'Yes', 'No') AS triangle FROM triangle;

610. Triangle Judgement
(中文版) SQL 笔记: Leetcode#610 Triangle Judgement