如何在dbgrid中实现将数据合计在最下一行的功能?

dbgrid在实现查询和统计时虽然以列表的形式列出数据,但是我想在它的下方的一行中
显示:

合计: {共计} {本列数据的合计1} {本列数据的合计2} ... {本列数据的合计n}
...全文
444 17 打赏 收藏 举报
写回复
17 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
baalcat 2000-11-10
用ado的shape命令可以实现。不过似乎只能在adodataset中实现,如何绑定到dbgrid上还不清楚......
  • 打赏
  • 举报
回复
我已经解决了,不过我想总结一下,顺便谢谢大家。:)
1。hfyun的做法是用sql,用了数据库连接的方法;
2.用dbgrid增强控件,朋友们介绍的ehlib的确很好,功能强大,可就是不能脱离delphi环境,因为这是一个受限制版本的,不知哪为仁兄有full version小弟沾光?
3.ybli说的临时表方法,虽然繁琐了点我想也是不错的。
总之,谢谢大家!
  • 打赏
  • 举报
回复
ybli 2000-11-08
太容易了,用临时表嘛,我都不知道用过多少次了
来一个循环把所有记录插入,并统计相应列数据,
最后把统计的值插入最后即可。或者用SQL语句也
可以。
  • 打赏
  • 举报
回复
govy 2000-11-05
steps 说的那个好。用dbgrideh(1.55)需要给我信govy@21cn.com
  • 打赏
  • 举报
回复
cwhelucky 2000-11-05
你也可以在其dbgrid的DefaultDrawing属性设为False ,然后在其drawdata事件中加入代码,其实在这个事件中你可以随心所欲的写表格,比如我的dbgrid就是和数据库中完全不同的东西.
  • 打赏
  • 举报
回复
hecf 2000-11-04

这对PB来说是小菜一碟
  • 打赏
  • 举报
回复
supershan 2000-11-04
SQL高手在此,太简单了,不管小计,还是合计。只要有一索引区分即可.
插入小计或合计记录,然后排序之
  • 打赏
  • 举报
回复
steps 2000-11-04
有一个很好用的DBGrid控件,名为EhLib,你可以去找找
它实现你的功能很方便,还在其它丰富的功能可用,一定不让你后悔!!
  • 打赏
  • 举报
回复
王集鹄 2000-11-03
通知Borland公司
  • 打赏
  • 举报
回复
xixi12359 2000-11-03
同意hfyun
  • 打赏
  • 举报
回复
xbibi 2000-11-03
试一试InfoPower的WWDBgrid或DevExpree的Grid
  • 打赏
  • 举报
回复
wujinbao 2000-11-03
hfyun 说的有道理不过如果要将合计行加在最后应该将select语句调换一下:
select "总计" as name,sum(score) as score from student
union
select name,score from student group by name...
你去试试!


  • 打赏
  • 举报
回复
sql不行吧,怎么会同时在一个query中起作用呢?我看还是找Wingsun说的控件吧.
  • 打赏
  • 举报
回复
Delfly 2000-11-02
用临时表也是一种办法,如果除了最后合计中间还有若干小计的话...
  • 打赏
  • 举报
回复
hfyun 2000-11-01
select name,score from student
union
select "总计" as name,sum(score) as score from student
  • 打赏
  • 举报
回复
Wingsun 2000-11-01
你可以使用别的dbgrid控件,如Ehdbgrid就可以实现你要求的功能,这个控件你可以在本站找到在开发中心中有。
  • 打赏
  • 举报
回复
zheng 2000-11-01
不要在dbgrid上打主意,与dbgrid相连的query的sql可实现。查查资料吧。
  • 打赏
  • 举报
回复
发帖
Delphi

5124

社区成员

Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
帖子事件
创建了帖子
2000-11-01 07:19
社区公告
暂无公告