麻烦问一下又没有获得几个字段中最大的一个的简便方法,比方说有6个整型的字段,想查询出这六个字段中的最大值应该怎么做简便一些?谢谢!

解决方案 »

  1.   

    Select Max(ID)  As MaxID From
    (
    Select ID1 As ID From TableName
    Union All
    Select ID2 From TableName
    Union All
    Select ID3 From TableName
    Union All
    Select ID4 From TableName
    Union All
    Select ID5 From TableName
    Union All
    Select ID6 From TableName
    ) A
      

  2.   

    好像没有说清楚我希望返回每一条记录的这几个字段的最大值INT1 INT2 INT3 INT4 INT5 INT6
    1     2     4   6     2   1
    2     4     6   1    0    5
    0     1     0   0    0    0
    返回结果
    6
    6
    1
      

  3.   

    create FUNCTION mmax(@num1 int ,@num2 int )
    RETURNS int
    AS 
    begin
    if(@num1>=@num2)
    return @num1
    return @num2
    end
    select mmax(mmax(maxx(maxx(maxx(INT1,INT2),INT3),INT4),INT5),INT6) from table
      

  4.   

    declare @t table(INT1 int,INT2 int,INT3 int,INT4 int,INT5 int,INT6 int)
    insert into @t select 1,2,4,6,2,1
    union all select 0,4,6,1,0,5
    union all select 0,1,0,0,0,0select [max]=(select max(col) from (select col=a.int1 union all select a.int2 union all select a.int3 union all select a.int4 union all select a.int5 union all select a.int6)a) from @t a
      

  5.   

    多谢,xeqtr1982(HaN) 的可以得到结果,不过感觉有点看不懂,能不能麻烦解释一下,分数不是问题!高手们还有更简便的方法也请不吝赐教!多谢!