strSQL = "sleect  max(cls_num) as num  from classes"
其中cls_num是varchar类型,要怎样才能使用max(cls_num)取得最大的号码。然后加1,作为下一个编号,怎样写?
sleect  max(cls_num)+1 as num  from classes??

解决方案 »

  1.   

    select  max(cast(cls_num as int)) + 1 as num  from classes
      

  2.   

    declare @t table(num varchar(10))
    insert @t select 2
    insert @t select 3
    insert @t select 4
    select max(num)+1 from @t
    /*----------- 
    5(影響 1 個資料列)*/
      

  3.   

    cast(cls_num as int)
    但若cls_num字段里的是数字,可以直接求max的,定义的Char型在SQL里不影响的
      

  4.   

    declare @a int
    select  @a = max(cast(cls_num as int)) + 1 as num  from classesinsert into ta(a) values(@a)为什么不做成int identity(1,1)型的
      

  5.   

    max(cls_num)+1 这样是不行的
    cast(max(cls_num) as int)+1
      

  6.   

    将其转换为int型然后再+1之后转换为varchar