sql中使用rtrim去除右边的空格,ltrim去除左边的空格

解决方案 »

  1.   

    告訴你吧! 要這樣寫才對
    sql.Add('select * from kcjlb where kcjlb.ckdm in (select ckdm from spckb where spckb.ckmc=:p_ckmc)');
    parameters.ParamByName('p_ckmc').value:=trim(sdepot.text);
    這樣寫絕對沒錯[email protected]
    OICQ:38052980
      

  2.   

    不要用*,用你的字段列表,要去空格的加上rtrim(字段)
      

  3.   

    你们没有明白我的意思,我是想去掉嵌套在里面的SQL语句查询出来结果的空格。
      

  4.   

    to bolly(波波):
    是这样的to zzutlink(来溜达)
    你的方法我试了,不行
      

  5.   

    不知道为什么,在SQL Server中当录入的数据长度小于字段(char型)的允许长度时,进行查询后
    查询的结果总是包含空格,在SQL语句的嵌套使用时,查询结果的空格去不掉
    sql.Add('select * from kcjlb where kcjlb.ckdm');
    sql.Add('in rtrim(select ckdm from spckb where spckb.ckmc=:p_ckmc)');
    请各位仁兄看看上面的语句写的对不对,怎么该语句执行后,空格照样去不掉。不胜感激!!!
      

  6.   

    sql.Add('    in (select rtrim(ckdm) from spckb where spckb.ckmc=:p_ckmc)');
      

  7.   

    to nanman(南蛮):
    你的方法我试了,还是查不出来。
      

  8.   

    sql.add('select fieldname from kcjlb where kcjlb.ckdm in (select ckdm from spckb where spckb.ckmc= trim(:p_ckmc))');如果不行,你就借助个临时变量tmp,将:p_ckmc的先赋給tmp,将tmp的作个去空处理,再給spckb.ckmc.
      

  9.   

    如果把char类型改成varchar类型,那么该死的空格就不会出来了。
      

  10.   

    同意chechy,我以前好像也遇到这种情况
      

  11.   

    to chechy(chechy):
    在数据库字段类型不变的情况下,有没有解决的办法?
      

  12.   

    都是ADO惹得祸。如果是BDE,那么你这个问题又不是问题了。
    我个人认为nanman(南蛮)的想法是正确的,可以你查不出来,我也没辙。