var
gl,sw:integer;
begin
gl := 0;
sw := 0;
table1.First;
while not table1.eof do
begin
if Copy(Trim(table1.FiledByName(‘用户编号’).AsString),1,2) = 'gl' then
Inc(gl);
if Copy(Trim(table1.FiledByName(‘用户编号’).AsString),1,2) = 'sw' then
Inc(sw);
Table1.Next;
end;
Edit1.Text := IntToStr(gl);
Edit2.Text := IntToStr(sw);
end;
gl,sw:integer;
begin
gl := 0;
sw := 0;
table1.First;
while not table1.eof do
begin
if Copy(Trim(table1.FiledByName(‘用户编号’).AsString),1,2) = 'gl' then
Inc(gl);
if Copy(Trim(table1.FiledByName(‘用户编号’).AsString),1,2) = 'sw' then
Inc(sw);
Table1.Next;
end;
Edit1.Text := IntToStr(gl);
Edit2.Text := IntToStr(sw);
end;
var
usercount : integer ;
query1.sql.add ( select bh from tblnamn where id like 'gl%' )
query1.active := true ;
usercount := query1.recordcount ;method 2 :
用 table 的 filter 属性
table1.recordcount 得到
但原理是一样的 !!
query2.sql=select count(*) from table1 where 用户编号 like sw%query1.open
query2.open
edit1.text:=inttostr(query1.fields[0].asinteger);
edit2.text:=inttostr(query2.fields[0].asinteger);
U:integer;
Begin
While not table1.eof do
Begin
If pos ( 'gl', table1.filedbyname(‘用户编号’) >0 then u:=u+1;/这句我也不知怎样表达
Table1.next;
End;
Edit1.text:=inttostr(u);
一句:
select count(*) from 表名 where 字段名 like 'gl%'
select
(select count(*) from table1 where instr(用户编号,'gl')>0 ) as gl开头的用户,
(select count(*) from table1 where instr(用户编号,'sw')>0 ) as sw开头的用户
from dual
这是ORACLE中的用法,其它数据库也大同小异,函数名不一样而已。如果用代码写的话, qybao(阿宝) 的方法就可以,
我试了你的为什么有如下错误
Token not found
Token:gl
query1.sql=select count(*) from table1 where 用户编号 like 'gl%'
query2.sql=select count(*) from table1 where 用户编号 like 'sw%'query1.open
query2.open
edit1.text:=inttostr(query1.fields[0].asinteger);
edit2.text:=inttostr(query2.fields[0].asinteger);