bb 是什么,我都看不懂你的SQL,别讲数据库了.(另,SQL与数据库有关,我用ORACLE).

解决方案 »

  1.   

    老兄,这个语句是否可以这样写:
    select sum(bb.quantity) from ordr_dtl.dbf bb,ordr_mst.dbf t  
    where (t.ordr_date between :nn1 and :nn2) and t.ordr_no=bb.ordr_no
          and t.quantity=0.0
      

  2.   

    你的第一个问题我是这样想的。
    var m:integer;
        s:string;
    ....
    m:=strtoint('000236');
    inc(m);
    ...
    s:=inttostr(m);
    ...
      

  3.   

    你的第一个问题我是这样想的。
    var m:integer;
        s:string;
    ....
    m:=strtoint('000236');
    inc(m);
    ...
    s:=inttostr(m);第二个问题,检查你的数据表设计是是否有主字段的限制
    ...
      

  4.   

    OK
    1、假定你用ORACLE数据库?什么,你不知道ORACLE~~~
    2、不管你要做什么,我只管你要的字段加一。(既要加一,为啥不用NUMBER)
    3、假定表 ABC,列 XYZ
    4、SQL 如下
               SELECT TO_CHAR(TO_NUNBER(XYZ) + 1) FROM ABC WHERE 条件;
    5、说明:TO_CHAR,TO_NUMBER 是ORACLE 的函数。其他数据库我没用过。
      

  5.   

    SELECT TO_CHAR((TO_NUMBER('XYZ') + 1),'099999') FROM ABC;
      

  6.   

    1、无这种函数,可以自己写一个,象title说的那样也是一个好的办法。
    2、语法错误,看看这样写如何:
    select sum(bb.quantity),ordr_no,ordr_date from ordr_dtl.dbf bb,ordr_mst.dbf t
    where (t.ordr_date between :nn1 and :nn2) and t.ordr_no=bb.ordr_no and quantity=0.0;
      

  7.   

    ORACLE 下,执行
    SELECT TO_CHAR((TO_NUMBER('000123') + 1),'099999') from dual;
    得到 '000124',你试一下就知道.