Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在mysql中使用嵌套大小写查找三角形的类型(给出了三条边的长度)?_Mysql_Sql_Case When - Fatal编程技术网

如何在mysql中使用嵌套大小写查找三角形的类型(给出了三条边的长度)?

如何在mysql中使用嵌套大小写查找三角形的类型(给出了三条边的长度)?,mysql,sql,case-when,Mysql,Sql,Case When,这个MySQL查询中的wrobg是什么? 它显示语法错误 选择 案例 当A=B时 案例 当A=C时,则为“等边” 当CB和B+C>A时,则为“不定常” 否则“不是三角形” 终止 从三角形开始; 为此,您还必须添加一个 SELECT CASE WHEN A = B THEN CASE WHEN A = C THEN 'Equilateral' WHEN C < A + B THEN 'Isosceles'

这个MySQL查询中的wrobg是什么? 它显示语法错误

选择 案例 当A=B时 案例 当A=C时,则为“等边” 当CC和A+C>B和B+C>A时,则为“不定常” 否则“不是三角形” 终止 从三角形开始;
为此,您还必须添加一个

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

为此,您还必须添加一个

SELECT
CASE
    WHEN A = B
    THEN
        CASE
            WHEN A = C THEN 'Equilateral'
            WHEN C < A + B THEN 'Isosceles'
            ELSE 'Not A Triangle'
        END
    WHEN B = C
    THEN
        CASE
            WHEN A < B + C THEN 'Isosceles'
            ELSE 'Not A Triangle'
        END
    WHEN A + B > C AND A + C > B AND B + C > A THEN 'Scalene'
    ELSE 'Not A Triangle'
END
FROM TRIANGLES;
无需嵌套大小写表达式:

SELECT (CASE WHEN A = B AND A = C THEN 'Equilateral'
             WHEN A = B AND C < A + B THEN 'Isosceles'
             WHEN A = B THEN 'Not A Triangle'
             WHEN B = C AND A < B + C THEN 'Isosceles'
             WHEN B = C THEN 'Not A Triangle'
             WHEN A + B > C AND A + C > B AND B + C > A THEN 'Scalene'
             ELSE 'Not A Triangle'
        END) as type
FROM TRIANGLES;
无需嵌套大小写表达式:

SELECT (CASE WHEN A = B AND A = C THEN 'Equilateral'
             WHEN A = B AND C < A + B THEN 'Isosceles'
             WHEN A = B THEN 'Not A Triangle'
             WHEN B = C AND A < B + C THEN 'Isosceles'
             WHEN B = C THEN 'Not A Triangle'
             WHEN A + B > C AND A + C > B AND B + C > A THEN 'Scalene'
             ELSE 'Not A Triangle'
        END) as type
FROM TRIANGLES;

请不要发布代码和数据的图像,请参见@nbk,但我应该如何显示示例表?您将文本和数字放在文本形式中,或者创建一个fiddle。请不要发布代码和数据的图像,请参见@nbk,但我应该如何显示示例表?您将文本和数字放在文本形式中,或者创建一个fiddle@Insane_班达。你不接受这个答案有什么原因吗?没有…op只是按照我想解决的方式回答的。你的也不错。对不起,如果这是粗鲁的话。@疯狂的班达。我通常认为避免大小写表达式嵌套是一件好事,这就是我回答的原因。@indise_ubanda。你不接受这个答案有什么原因吗?没有…op只是按照我想解决的方式回答的。你的也不错。对不起,如果这是粗鲁的话。@疯狂的班达。我通常认为避免大小写表达式嵌套是一件好事,这就是我回答的原因。