要实现从表单中读取满足一些条件的记录,可能不只一条,然后让这些记录一条条和表单中的满足其他条件的记录进行比较,做一些运算,忘大家给点思路,算法,最好是有的例子可以进行学习

解决方案 »

  1.   

    把查询结果放在where后面就好啊。
      

  2.   

    var s1,s2,s3:string;begin
      s1:=trim(edit1.Text);
      s2:=trim(edit2.Text);  Query1.Close;
      Query1.SQL.Clear;
      Query1.SQL.Add('select client_id from db_client_info');
      Query1.Open;
      do while not query1.DataSource.DataSet.IsEmpty
        begin
          Query2.Close;
          Query2.SQL.Clear;
          Query2.SQL.Add('select commodity_daima,bargain_price,bargain_quantity,bargain_heading from db_bargain_rec');
          Query2.SQL.Add('where bargain_kai_or_pin=1,client_id=:v_client_id,bargain_time=:v_day');
          Query2.ParamByname('v_client_id').Asstring:=Query1.FieldValues['client_id'];
          Query2.ParamByname('v_day').AsDateTime:=s2;
          Query2.Prepare;
          Query2.Open;      do while not query2.DataSource.DataSet.IsEmpty
            begin
              Query3.Close;
              Query3.SQL.Clear;
              Query3.SQL.Add('select * from db_bargain_rec');
              Query3.SQL.Add('where commodity_daima=:v_commodity_daima,bargain_kai_or_pin=0,client_id=:v_client_id,bargain_heading=:v_bargain_heading');
              Query3.ParamByname('v_commodity_daima').Asstring:=Query2.FieldValues['commodity_daima'];
              Query3.ParamByname('v_client_id').Asstring:=Query1.FieldValues['client_id'];
              s3:=Query2.FieldValues['bargain_heading'];
              Query3.ParamByname('v_bargain_heading').Asstring:=(not s3);
              Query3.Prepare;
              Query3.Open;          do while not query3.DataSource.DataSet.IsEmpty
                begin
                  s4:=Query2.
                  
          query1.DataSource.DataSet.Next;
        end
    end;
    这是我编的一点点,中间有些具体的是乱写的  你们看看怎么办???
      

  3.   

    query3还没有写完,我不知道这样写到底对不对
    还有个问题query3,2同时要对同一张表操作可以吗
    而且他们还要互相欠套