散100分求解,在SQL中的語句'select count(distinct XX ) from Table',在Delphi中如表達?
如數據Table中有記錄數為1,1,2,3,3,4,5按sql語句統計,select count(xx) from table 統計得記錄數為7,select count(distinct xx) from table 統計得記錄數為5.在delphi中用select count(distinct xx) from table ,提示錯誤,用select distinct count( xx) from table 無效,統計得記錄數為7.請問如何解答?不希望先把記錄數插入新表再統計..... 问题点数:100、回复次数:11Top
1 楼lijinghe1(喜欢没有文化性格泼辣身材高大的女人)回复于 2004-12-01 08:58:28 得分 5
什么数据库,怎么连接的Top
2 楼zihan924(子寒)回复于 2004-12-01 08:59:14 得分 0
Access數據庫!!!Top
3 楼bee2518(迷茫ing)回复于 2004-12-01 08:59:15 得分 20
select count(*) from (select distinct xx from table)Top
4 楼bee2518(迷茫ing)回复于 2004-12-01 09:00:14 得分 15
有的数据库要别名
这样
select count(b.*) from (select distinct xx from table) b
Top
5 楼zihan924(子寒)回复于 2004-12-01 09:01:42 得分 0
試試,可以的話立刻散分!Thank You!Top
6 楼zihan924(子寒)回复于 2004-12-01 09:07:02 得分 0
那麼在
with dm.SumQry do
begin
close;
sql.Clear;
sql.Add('select z_bc.dates,count(zhusu.jh), sum(zhusu.scrs),sum(zhusu.scsl),sum(zhusu.scsj),sum(zhusu.bchg),avg(zhusu.wcl),sum(zhusu.fp),avg(zhusu.fpl),sum(zhusu.scqs) ,sum(zhusu.tjsj), sum(zhusu.sj2)from z_bc,zhusu');
sql.Add('where z_bc.dates >=:dates1 and dates<=:dates2 and z_bc.z_id=zhusu.z_id group by z_bc.dates,z_bc.z_id');
dm.SumQry.Parameters.ParamByName('dates1').Value:=dtker1.Text;
dm.SumQry.Parameters.ParamByName('dates2').Value:=dtker2.Text;
open;
應如何修改!!!關鍵是統計上面的count(zhusu.jh).Top
7 楼Changefish(小翼【嘘。。。别出声!我是从80端口进来的】)回复于 2004-12-01 09:11:12 得分 10
select count(b.*) from (select distinct xx from table) b
Top
8 楼zihan924(子寒)回复于 2004-12-01 09:27:46 得分 0
有人回答
那麼在
with dm.SumQry do
begin
close;
sql.Clear;
sql.Add('select z_bc.dates,count(zhusu.jh), sum(zhusu.scrs),sum(zhusu.scsl),sum(zhusu.scsj),sum(zhusu.bchg),avg(zhusu.wcl),sum(zhusu.fp),avg(zhusu.fpl),sum(zhusu.scqs) ,sum(zhusu.tjsj), sum(zhusu.sj2)from z_bc,zhusu');
sql.Add('where z_bc.dates >=:dates1 and dates<=:dates2 and z_bc.z_id=zhusu.z_id group by z_bc.dates,z_bc.z_id');
dm.SumQry.Parameters.ParamByName('dates1').Value:=dtker1.Text;
dm.SumQry.Parameters.ParamByName('dates2').Value:=dtker2.Text;
open;
應如何修改!!!關鍵是統計上面的count(zhusu.jh).
嗎???????????Top
9 楼bee2518(迷茫ing)回复于 2004-12-01 09:45:18 得分 20
可以这样改
(select z_bc.dates,count(zhusu.jh), sum(zhusu.scrs),sum(zhusu.scsl),sum(zhusu.scsj),sum(zhusu.bchg),avg(zhusu.wcl),sum(zhusu.fp),avg(zhusu.fpl),sum(zhusu.scqs) ,sum(zhusu.tjsj), sum(zhusu.sj2)from z_bc,zhusu where z_bc.dates >=:dates1 and dates<=:dates2 and z_bc.z_id=zhusu.z_id group by z_bc.dates,z_bc.z_id) a ,(select count(zhusu.jh) from zhusu whereTop
10 楼bee2518(迷茫ing)回复于 2004-12-01 09:49:02 得分 30
上面没写完,如下面:
select a.y,b.x,a.a,a.b,a.c,a.d,a.e,a.f,a.g,a.h,a.i,a.j from
(select z_bc.dates y, sum(zhusu.scrs) a,sum(zhusu.scsl) b,sum(zhusu.scsj) c,sum(zhusu.bchg) d,avg(zhusu.wcl) e,
sum(zhusu.fp) f,avg(zhusu.fpl) g,sum(zhusu.scqs) h,sum(zhusu.tjsj) i, sum(zhusu.sj2) j from z_bc,zhusu where z_bc.dates >=:dates1
and dates<=:dates2 and z_bc.z_id=zhusu.z_id group by z_bc.dates,z_bc.z_id) a ,
(select count(zhusu.jh) x from z_bc,zhusu where z_bc.dates >=:dates1 and dates<=:dates2 and z_bc.z_id=zhusu.z_id) b
把count单独分开Top
11 楼zihan924(子寒)回复于 2004-12-01 09:58:18 得分 0
Thank You Very Much!!!!!散分!!Top




