procedure Tbmdm.Button2Click(Sender: TObject); var xy:integer; begin query1.sql.add('select count(*) sumdm from table1 where dm=''002'''); xy:= query1.fieldbyname('sumdm').asinteger; end; 上面是语句,可运行到xy:= query1.fieldbyname('sumdm').asinteger;这一句时,就出错,说是没发现sumdm
Var xy:integer; begin query1.sql.clear; query1.sql.add('select count(*) from table1 where dm=''002'''); query1.open; xy:= query1.fields[0].asinteger; end;
xy:= query.fieldbyname('sumdm').asinteger;
var
xy:integer;
begin
query1.sql.add('select count(*) sumdm from table1 where dm=''002''');
xy:= query1.fieldbyname('sumdm').asinteger;
end;
上面是语句,可运行到xy:= query1.fieldbyname('sumdm').asinteger;这一句时,就出错,说是没发现sumdm
xy:integer;
begin
query1.sql.clear;
query1.sql.add('select count(*) from table1 where dm=''002''');
query1.open;
xy:= query1.fields[0].asinteger;
end;
1. 有 index 的 SetRange( [002],[002] ), 然后 RecordCount
2. 没 index 的 filter = 'xxx=002', 然后 filtered = true, 取RecordCount, Filtered = false
var
recdm,recdw:integer;
begin
table1.filter:='dm=02';
table1.filtered:=true;
recdm:=table1.RecordCount;
table1.filtered:=false; table1.filter:='dw=河南省';//运行到这里就出错
table1.filtered:=true;
recdw:=table1.RecordCount;
table1.filtered:=false;
end;
我主要是想达到统计dm=02有多少条记录和dw=河南省的有多少条记录。当然是有其他方法,但我搞不懂,这里错在那儿,请指教!