function GetValue(Const a,b:Single):Single;
begin
   Result:=(a-b)/b;
end;然后你的代码这样写
if getvalue(a,b)>3% then
begin
   showmessage('超过3%,请写备注');
end;在SQL中的写法没有用过,如果试过了,告诉你!

解决方案 »

  1.   

    就是a-1.03b>0呀,SQL可以写的呀!
      

  2.   

    我是这样写的。
    procedure TForm1.Button1Click(Sender: TObject);
    var
    a:string;
    b:string;
    begin
     adoquery1.Close;
     adoquery1.SQL.Clear;
     adoquery1.SQL.Add('select * from table');
     adoquery1.SQL.Add('where area='''+edit1.text+'''');
     adoquery1.Open;
     a:=adoquery1.FieldByName('givemoney').AsString;
     b:=edit2.text;
     if  (a-b)/b>3%  then  //这里要怎么改动????  
     begin
     showmessage('您与系统的差异率超过了3%,请在备注栏里注时原因!')
     memo1.Enabled:=true
     end;
     end;