Brand 规格 得率 得率不足
RHJMA 200 96.5 0
RHJMA 200 98.3 1
RHJMC 200 95.2 1
RHJMC 200 99.5 0
这是我的查询出来的一个query1里的数据,我想通过这个表汇总出一个表,按Brand为唯一性分别统计每个品牌(Brand)
的平均得率,还有得率不足(得率不足是求和),如下表Brand 规格 得率 得率不足
RHJMA 200 97.4 1
RHJMC 200 97.35 1因为我的数据是变化的想写个动态的,我也不懂,请大家不吝赐教!!!
RHJMA 200 96.5 0
RHJMA 200 98.3 1
RHJMC 200 95.2 1
RHJMC 200 99.5 0
这是我的查询出来的一个query1里的数据,我想通过这个表汇总出一个表,按Brand为唯一性分别统计每个品牌(Brand)
的平均得率,还有得率不足(得率不足是求和),如下表Brand 规格 得率 得率不足
RHJMA 200 97.4 1
RHJMC 200 97.35 1因为我的数据是变化的想写个动态的,我也不懂,请大家不吝赐教!!!
select * from table
那么语句可以改写如下:
select Brand,规格,adv(得率) as 得率,sum(得率不足) as 得率不足 from (select * from table) group by (Brand)
1、表1:原始资料表
2、表2:汇总表
3、写SQL语句时,标点符号一定要用西文//插入记录,能保存到表2里
AQUERY1.close;
AQUERY1.sql.text:='insert into 表2(Brand,规格,得率,得率不足)'
+' select Brand,规格,adv(得率)as 得率,sum(得率不足)as 得率不足 from 表1 group by Brand'
Query1.ExecSQL;//重新显示在DBGRID里
QUERY1.close;
QUERY1.sql.text:='select * from 表2';
QUERY1.open;
如查询出来的结果,不需保存到数据库里,可直接写成:
{
AQUERY1.close;
AQUERY1.sql.text:='select Brand,规格,adv(得率)as 得率,sum(得率不足)as 得率不足 from 表1 group by Brand'
Query1.open;}
select Brand,规格,adv(得率) as 得率,sum(得率不足) as 得率不足 from 查询出来的数据表 group by (Brand)
as
select Brand,规格,adv(得率) as 得率,sum(得率不足) as 得率不足 from (select * from table) group by (Brand)
---------------
當然,你也可以將查詢出來的結果導出到Excel之類的