怪问题,请教专家
我用VB编程,ADODB连接ACCESS数据库,有下面两语句:
select E.客户名称,F.姓名,E.应收款,E.金额 from (select C.*,D.客户名称 from (select A.*,B.金额 from (select * from 应收款) A,(select 客户ID,sum([应收款]) as 金额 from (select * from 应收款) G group by 客户ID) B where A.客户ID=B.客户ID) C left join 客户资料 D on C.客户ID=D.客户ID) E left join 业务员资料 F on F.业务员ID=E.业务员ID order by E.客户名称
select E.客户名称,F.姓名,E.应收款,E.金额 from (select C.*,D.客户名称 from (select A.*,B.金额 from 应收款 A,(select 客户ID,sum([应收款]) as 金额 from (select * from 应收款) G group by 客户ID) B where A.客户ID=B.客户ID) C left join 客户资料 D on C.客户ID=D.客户ID) E left join 业务员资料 F on F.业务员ID=E.业务员ID order by E.客户名称
注意两语句只差"(select * from 应收款) A"和"应收款 A" 。这两句语句第二句可正常运行,但第一句提示出错:"no value given for one or more required parameters"。而且还有个现象,只需要将A或G处的(select * from 应收款)任一个换成"应收款"它就能运行。但是将它们放到SQL SERVER的查询分析器里都可正常运行。
另:(select * from 应收款)是根据用户选择自动生成的,有可能会(select * from 应收款 where xxxx)
请问这是怎么回事,如何解决?