access数据库里的
SELECT foodid, food, sum(number)
FROM menu
WHERE date between #2004-10-6# and #2004-11-24#
GROUP BY foodid, food;
怎么用程序把sum(number)的结果存入DBGridEh的指定的列,同时第一列自动编号!
SELECT foodid, food, sum(number)
FROM menu
WHERE date between #2004-10-6# and #2004-11-24#
GROUP BY foodid, food;
怎么用程序把sum(number)的结果存入DBGridEh的指定的列,同时第一列自动编号!
解决方案 »
- 超级求救!IDTCP问题!
- 我如何直接使用ODBC避开BDE?
- 主細表新增中的問題?
- 如何在Delphi中调用纯C的过程?100分相送
- 急找:有没有ListView里面可以放置Edit和CombomBox的第三方组件。给分一百啊。
- 医疗行业VPN应用解决方案
- SQL6.5 数据恢复的问题 ????急、、、100分
- stringgrid控件滚动显示问题
- 为何quickrep1.preview只显示一条记录?
- 为什么我用socketconnection连接的三层结构,连接速度那么慢。
- 用哪个函数可以自动调用系统中的Word和Excel文件 ?
- 高手请进,100分相送,一个看似简单的实现类似资源管理器效果问题(MDI)
DBGrid某列显示的数据都是DataSet的中的数据,所以对DBGridEh显示数据的控制就实际上是对DataSet的控制。
你要显示Sum(Number)这个字段的值只需要连接上DataSource,DataSource连接了DataSet就会自动显示了。
2、同时第一列自动编号!
在DataSet中建立一个计算字段。字段类型Integer。
在该字段的OnGetText的事件中写入:
Text:=IntToStr(DataSet.RecNo);
即可。
你可以将DBGridEh的第一列指向这个字段。那么第一列就会自动按1 2 3 4 5 ...排列
在第一个问题中sum(Number)怎么连接DataSource,DBGridEh不能显示sum(Number)
能用程序实现吗?
你用一个TQuery或者TADOQuery。
qryExecute:TADOQuery;
qryExecute.close;
qryExecute.ConnectionString:=...;
qryExetute.Sql.text:='SELECT foodid, food, sum(number) sumNumber FROM menu WHERE date between #2004-10-6# and #2004-11-24# GROUP BY foodid, food';
qryExecute.Open;然后用DataSource连这个Dataset,DBGridEh连这个DataSource就OK了,我经常做统计都可以显示出来的。