你这样写出错吗?运行通过了就可以了,不通过当然就有错了。
str(sum(ctclk.hjzl)/ctjhk.jh01*100/:gzr,5,2)中,sum(ctclk.hjzl)/ctjhk.jh01*100/:gzr倒没什么问题,但是str这个函数有吗?那5,2又是什么来的

解决方案 »

  1.   

    cast((sum(ctclk.hjzl)/ctjhk.jh01*100) as varchar(20)) as gzr
      

  2.   

    在未加:gzr前该select可以运行,加:gzr的目的是动态赋值后由sum结果除以gzr,得到值后保留2位小数
      

  3.   

    是不是这样:
    Convert(decimal (5, 2),sum(ctclk.hjzl)/ctjhk.jh01*100/:gzr)
      

  4.   

    Str(111,8,2)
    就是把数字111转换为字符类型~~字符长度是5,保留2位小数~~结果就是'  111.00'~~~
      

  5.   

    Convert(decimal (5, 2),sum(ctclk.hjzl)/ctjhk.jh01*100/:gzr)在运行后无查询结果返回,不知为何。