我有数据表dg
申购人 品名 金额 日期
A MA 50.00 9-20
A PP 10.00 10-1
B PB 20.00 10-5
A PC 5.00 10-5
C PD 200.00 10-8
B PR 100.00 10-8
... ... .... ...
要求统计出 从10-1到10-10 每位申购人 申购的总金额,返回到grid表格中
请教了,谢谢!
...全文
827打赏收藏
请教,一个求和程序
我有数据表dg 申购人 品名 金额 日期 A MA 50.00 9-20 A PP 10.00 10-1 B PB 20.00 10-5 A PC 5.00 10-5 C PD 200.00 10-8 B PR 100.00 10-8 ... ... .... ... 要求统计出 从10-1到10-10 每位申购人 申购的总金额,返回到grid表格中 请教了,谢谢!
应做以下改正:加了两个"="
thisform.grid1.recordsource =''
SELE 申购人,SUM(金额) FROM DG GROUP BY 申购人 WHERE 日期<={^2004-10-10}.AND.日期>={^2004-10-1} INTO DBF LSB&&这里你的日期不合法,我改了一下.
thisform.grid1.recordsource = 'LSB'
thisform.GRID1.refresh
thisform.grid1.recordsource =''
SELE 申购人,SUM(金额) FROM DG GROUP BY 申购人 WHERE 日期<{^2004-10-10}.AND.日期>{^2004-10-1} INTO DBF LSB&&这里你的日期不合法,我改了一下.
thisform.grid1.recordsource = 'LSB'
thisform.GRID1.refresh
*如果你的申购人和日期字段为字符型
SET DATE YMD
thisform.grid1.recordsource = null
USE dg
INDEX ON 申购人+日期 TO dg-sy
TOTAL ON 申购人+日期 TO dg_temp FOR (CTOD(日期)>CTOD("2004/10/01") AND CTOD(日期)<CTOD("2004/10/08"))
USE dg_temp ALIAS dgb
thisform.grid1.recordsource = "dgb"
thisform.grid1.refresh
*如果你的日期字段为日期型
SET DATE YMD
thisform.grid1.recordsource = null
USE dg
INDEX ON 申购人+DTOC(日期) TO dg-sy
TOTAL ON 申购人+DTOC(日期) TO dg_temp FOR (日期>CTOD("2004/10/01") AND 日期<CTOD("2004/10/08"))
USE dg_temp ALIAS dgb
thisform.grid1.recordsource = "dgb"
thisform.grid1.refresh
thisform.grid1.recordsource = null
select 申购人,日期, sum(金额) as 金额 from dg group by 申购人,日期 into cursor cur1 order by 申购人,日期
thisform.grid1.recordsource = 'cur1'
thisform.refresh