为什么现实应用会有这么多计算机很难解决的问题,至少我是这么认为的!(15分)

  • 主题发起人 freesoft
  • 开始时间
2001-3-9日,我要求调整价格,现在1000这条记录的内容我
1000 -10 -20 -50
2001-3-10日,要求调整价格
1000 -5 -5 -5
建新表
tzid,xsid, dj, pmj, xsj, sj
其中后面记录调整时间和金额
select a.dj-b.dj,a.pmj-b.pmj,a.xsj-b.xsj
from table1 a,table2 b
where a.id=b.xsid and a.sj=b.sj

 
TO:ugvanxk
其实如果只调整一次是很简单的,关键是现在可能会调整多次,调整利润表中会出现多条
1000的记录这是我关心的,你不知道理解了没有?
 
有点乱,现在头脑比较晕,尤其是第二个,写的好像有点问题,调整一下,应该可以的。
Select a.dj+b.dj,a.pmj+b.pmj,a.sxj+b.sxj
from
(Select sum(dj) dj ,sum(pmj) pmj ,sum(xsj) sxj from 利润调整表) a
利润表 b
where a.id=b.id

Select a.dj+b.dj,a.pmj+b.pmj,a.sxj+b.sxj
from
from
利润表 b,
(Select sum(dj) dj ,sum(pmj) pmj ,sum(xsj) sxj from 利润调整表 where a.id=b.id) a
where a.id=b.id

======================================
现在头不晕了,重新讲这两个的语法弄正确了。不过最好不要使用id作为字段名称,其他的倒还可以
Select a.dj+b.dj,a.pmj+b.pmj,a.sxj+b.sxj
from
(Select sum(dj) dj ,sum(pmj) pmj ,sum(xsj) sxj from 利润调整表) a,
利润表 b
where a.id=b.id and a.id='2000'

Select a.dj+b.dj,a.pmj+b.pmj,a.sxj+b.sxj
from
利润表 b,
(Select sum(dj) dj ,sum(pmj) pmj ,sum(xsj) sxj from 利润调整表 aa where aa.id=b.id) a,
where a.id=b.id and b.id='2000'
 
票号
ID1 dj pmj xsj
1000 20 100 120

调整价格
ID2 iD1 dj pmj xsj sj
123 1000 5 10 20 2001-3-8
124 1000 10 80 70 2001-3-9
125 1000 15 95 115 2001-3-10

销售表
ID3 id1 张数 sj


这三张表 通过id1连接 表二通过 日期和表三

 
还要我先建个库才行,怎么办呢,建库先.

select id,(table1.dj+table3.dj1) as out1,(table1.pmj+table3.dj2) as out2,
(table1.xsj+table3.dj3) as out3 from table1,
(select sum(tdj) as dj1,sum(tpmj) as dj2,sum(txsj) as dj3 from table2
where tid=1000) as table3 where table1.id=1000

给你简单写一个,用上面这个查询可以查出编号为1000的票,我已在Access中调试通过了,还有问题
把你的库发给我.
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
顶部