SELECT MAX(aae043) INTO max_aae043 FROM hsoldyl.dwshhbf;
表dwshhbf中的Max_aae043为char(6),
length(Max(aae043))也为6,为什么报错呢?
换成trim(aae043)就不报错了

解决方案 »

  1.   

    SELECT MAX(aae043) INTO max_aae043 FROM hsoldyl.dwshhbf;
    表dwshhbf中的Max_aae043为char(6),
    length(Max(aae043))也为6,为什么报错呢?
    换成trim(aae043)就不报错了你的MAX(aae043) 写法没问题吗?是不是Max_aae043这样子的?
    可以参考
    http://hi.baidu.com/forhh/blog/item/a6a48326357e34128a82a1f2.html
      

  2.   

    SELECT MAX(aae043) INTO max_aae043 FROM hsoldyl.dwshhbf;
    表dwshhbf中的aae043为char(6),
    length(Max(aae043))也为6,为什么报错呢?
    换成trim(aae043)就不报错了
      

  3.   

    你的oracle版本是什么,这可能是oracle的一个bug
        * Oracle9iR2 (9.2.0.8, terminal patchset) 
        * Oracle11gR1(11.1.0.x or higher) 
        * Oracle10gR1(10.1.0.5 or higher) 
        * Oracle10gR2 (10.2.0.2 or higher) 
    解决方案有两个
    1 trim
    2 SELECT CAST(MAX(aae043) AS CHAR(6)) INTO max_aae043 FROM hsoldyl.dwshhbf;
      

  4.   

    SELECT MAX(aae043) FROM hsoldyl.dwshhbf;
    得到什么结果?