表中有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选择C列。

解决方案 »

  1.   

    SELECT 
        (SELECT MAX(a)
         FROM(
           SELECT a UNION ALL
           SELECT b UNION ALL
           SELECT c 
           ) AS t   
        ) AS maxvalue
    FROM tb
      

  2.   

    SELECT 
    (CASE A > B
     THEN A
     ELSE B
     END
    )
       ,(CASE B > C
     THEN B
     ELSE C 
     END

    FROM MY_TABLE
      

  3.   

    #1楼的也是个方法declare @i int, @j int, @k int
    set @i = 3
    set @j = 2
    set @k = 1select case when @i > @j and @i > @k then @i
                when @j > @k then @j
                else @k end
      

  4.   


    消息 102,级别 15,状态 1,第 3 行
    '>' 附近有语法错误。
    我的A B C都是int类型的