想在日期里找出一段时间的数据:
数据为: TDate price number
20060912 12 2
20060913 9 1
20060914 8 4
20060915 45 1
20060916 9 6
20060917 78 1
20060918 45 7
mystr:='200609';
Query1.Close;
Query1.SQL.Clear; Query1.SQL.Add(' select * from bill.db where 1=1 ');
Query1.SQL.Add(' TDate >=: bill1 and TDate <=: bill2 ');
Query1.parameter[bill1].Asstring:= mystr+'01';
Query1.parameters[bill2].Asstring := mystr+'31';
Query1.open;但是DBGrid没有任何显示
还有我想在上面的基础上再求个和
select sum(price*number)然后在edit4.Text里面显示出来
望高手们多多指教
在线等待
数据为: TDate price number
20060912 12 2
20060913 9 1
20060914 8 4
20060915 45 1
20060916 9 6
20060917 78 1
20060918 45 7
mystr:='200609';
Query1.Close;
Query1.SQL.Clear; Query1.SQL.Add(' select * from bill.db where 1=1 ');
Query1.SQL.Add(' TDate >=: bill1 and TDate <=: bill2 ');
Query1.parameter[bill1].Asstring:= mystr+'01';
Query1.parameters[bill2].Asstring := mystr+'31';
Query1.open;但是DBGrid没有任何显示
还有我想在上面的基础上再求个和
select sum(price*number)然后在edit4.Text里面显示出来
望高手们多多指教
在线等待
Query1.params.paramsbyname('bill1').Asstring:= mystr+'01';
query1.params.paramsbyname('bill2').Asstring := mystr+'31';
p,n,sum:integer;
////////////////////////////////////////////////
Query1.SQL.Add(' select * from bill.db where 1=1 and ');
Query1.SQL.Add(' TDate >=: bill1 and TDate <=: bill2 ');
Query1.parameters[bill1].value:= mystr+'01';
Query1.parameters[bill2].value:= mystr+'31';
Query1.Open;
if Query1.RecordCount>0 then
begin
Query1.First;
sum=0;
while not Query1.Eof do
begin
p:=Query1.FieldByName('price').Value;
n:=Query1.FieldByName('number').Value;
sum:=sum+p*n;
end;
Edit4.Text:=IntToStr(sum);
end;
Query1.Next;
Missing operator or semicolon
Undeclared identifier: 'parameters'
Missing operator or semicolon师兄
还是报错呀
Query1.SQL.Add(' TDate >='+ quotedstr(mystr+'01'));
Query1.SQL.Add(' and TDate <='+ quotedstr(mystr+'31'));