我试过了,比如a4=a1+a2-a3,其中a1,a2,a3只要都有数据a4才进行计算,否则差一个也不行,这种情况请问应该怎么解决?谢谢!

解决方案 »

  1.   

    如果你是用的Oracle可以这样:a4 = NVL(a1,0)+NVL(a2,0)-NVL(a3,0)NVL(a1,0)表示如果a1不为空则返回a1,否则返回0别的数据库有相应的表达方式,但我记不清了。
      

  2.   

    agui(阿贵)你好!按你的方面不行
    我用的是delphi自带的paradox数据设计系统做出来的表,再问各位高手应该怎么做呢?
      

  3.   

    1、  把数据库中相关字段设置  缺省为 0 ;如a1..a12 ;
    2、  用 agui(阿贵) 的想法,但是paradox不知道有没有相关函数,sql server也有一个类似的
         函数 isnull(a1,0) 这样子为空是自动为0. 
      

  4.   

    我就是使用SQL写的,语句如下,还是通过不了
    update czb set a4=isnull(a1,0)+isnull(a2,0)-isnull(a3,0)
    再问各位应该怎么写才管呢
      

  5.   

    我发现当某个数值为空时就不参与计算,只要有0在上面计算都是成功的,可怎么用SQL语句来实现将数值为空的字段全部填为0呢?我用下面语句却出错,请教应该怎么写。
    update czb set a1=isnull(a1,0)