数据统计问题,有点难!(100分)

  • 主题发起人 主题发起人 WorldWalker
  • 开始时间 开始时间
W

WorldWalker

Unregistered / Unconfirmed
GUEST, unregistred user!
我想用SQL实现如下的统计工作,各位大师看看能不能实现:
1.求各个字段数据的最大值,且返回该值所在记录的其他字段,只返回第一条;
2.求各个字段数据的平均值,且字段数据的筛选范围均不相同(同样适用于第一条要求);
3.在统计的同时,在DBGRID上显示所有的记录(无筛选的),而统计值可以在TEDIT上.
照理用一系列的SQL语句基本可以实现,但那太耗时了,最好能在一两条语句中实现.
各位大师,您的主意呢?(我用的是PARADOX表).
 
1. select B.* from Table B where
B.Field1=( select Max(A.Field) as MaxField from Table A )

2.不明白你的要求,请说明。


3.应该没有问题,DBGRID显示用一个QUERY。统计时用另一个QUERY,然后连接TEdit。
 
谢谢lzliang的回答。我重新解释我的请求。
1.我想在一条SQL语句中求出所需字段的最大值.
2.比如字段1要求>5,<10,字段2要求>20,<30,然后求其平均值(或最大值,最小值).
3.同意lzliang说的.
 
1.lzliang说的没错
select B.* from Table B where
B.Field=( select Max(A.Field) as MaxField from Table A )
2.
select c1,c2,avarage(c1) as avc1,avarage(c2) as avc2 from table
where c1>5 and c1<10 and c2>20 and c2<30
group by c1,c2
或者
select avarage(b.c1),avarage(b.c2)
from (select c1,c2 from table where c1>5 and c1<10 and c2>20 and c2<30) b
 
多人接受答案了。
 
多人接受答案了。
 
后退
顶部