比如表 from1
姓名  语文   数学   英语
张A   82    78    64
孙B   88    90    89
刘A   91    84    73列出张A 孙B 刘A的科目成绩的最高分

解决方案 »

  1.   

    DECLARE @a TABLE(姓名 varchar(20),  语文 int, 数学 int,  英语  int)
    INSERT @a select '张A',  82,    78,    64 
    union all select '孙B',  88,    90,    89 
    union all select '刘A',  91,    84,    73 SELECT 姓名,CASE WHEN 英语>(CASE WHEN 语文>数学 then 语文 else 数学 end) 
     THEN   英语
     ELSE 
    CASE WHEN 语文>数学 then 语文 else 数学 end
        END 成绩
    FROM @a--result
    /*
    姓名                   成绩          
    -------------------- ----------- 
    张A                            82 
    孙B                            90 
    刘A                            91 (所影响的行数为 3 行)
    */