"SELECT top 12 id,filepath,type,(case when len(title)>30 then left(title,30)+'...' else title end) as ftitle FROM Table.A order by id desc";从Table.A中刷出数据,如果超过30个字符,则其它的用'...'代替,
现在求一条语句:如果超过30个字符,则其它的用'...'代替,但如果不足30个的字符,不足的字数
用空格代替.该SQL语该怎么写?

解决方案 »

  1.   


    SELECT top 12 id,filepath,type
    ,(
    case when len(title)>30 then left(title,30)+'...' 
    when len(title)<30 then title + replicate('',30-len(title))
    else title end
    ) as ftitle 
    FROM [Table] A order by id desc
      

  2.   

    "SELECT top 12 id,filepath,type,(case when len(title)>30 then left(title,30)+' ' else title end) as ftitle FROM Table.A order by id desc"; 
      

  3.   


    SELECT top 12 id,filepath,type
    ,(
        case when len(title)>30 then left(title,30)+'...' 
        when len(title)<30 then title + replicate(' ',30-len(title))
        else title end
    ) as ftitle 
    FROM [Table] A order by id desc
      

  4.   


    "SELECT top 12 id,filepath,type,(case when len(title)>30 then left(title,30)+'...' else title+REPLICATE(' ',30-len(title))  end) as ftitle FROM Table.A order by id desc"; 
      

  5.   

    "SELECT top 12 id,filepath,type,(case when len(title)>30 then left(title,30)+'...' else left(title+'                              ',30) end) as ftitle FROM Table.A order by id desc"; "SELECT top 12 id,filepath,type,(case when len(title)>30 then left(title,30)+'...' else left(title+REPLICATE(' ',30),30) end) as ftitle FROM Table.A order by id desc"; 
      

  6.   


    select  top 12 id,filepath,type,
    (case when len(title)>30 then left(title,30)+'...' 
     else title end) as ftitle 
    FROM A 
    order by id desc