select * from M where mb between 'mb1' and 'mb10'

解决方案 »

  1.   

    本帖最后由 roy_88 于 2009-05-06 12:24:42 编辑
      

  2.   

    --语法没问题。
    select * from M where mb between 'mb1' and 'mb20'
      

  3.   

    DECLARE @TB TABLE([mb] VARCHAR(3))
    INSERT @TB 
    SELECT 'mb1' UNION ALL 
    SELECT 'mb2' UNION ALL 
    SELECT 'mb3' UNION ALL 
    SELECT 'mb4' UNION ALL 
    SELECT 'mb5'DECLARE @TA TABLE([mb] VARCHAR(3))
    declare @mb int
    select @mb=1
    while @mb <=10begin
    INSERT @TA
    select * from @TB where mb='mb'+ltrim(@mb)+''
    set @mb=@mb+1
    end SELECT * FROM @TA
    /*
    mb
    ----
    mb1
    mb2
    mb3
    mb4
    mb5
    */
      

  4.   

    create  table #T(mb nvarchar(10))
    insert #T select 'mb1'
    insert #T select 'mb2'
    insert #T select 'mb3'
    insert #T select 'mb4'
    insert #T select 'mb5'
    insert #T select 'mb6'
    insert #T select 'mb7'
    insert #T select 'mb8'
    insert #T select 'mb9'declare @mb int,@s nvarchar(1000)
    select @mb=1,@s=''
    while @mb <=5
    select @s=@s+',''mb'+rtrim(@mb)+'''',@mb=@mb+1
    set @s=stuff(@s,1,1,'')
    exec('select * from #T where mb in('+@s+')')
      

  5.   

    难道是
    select * from M where [mb]<='mb10'
    呵呵