设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1587|回复: 8
打印 上一主题 下一主题

[查询] 旧事重提,能否将这个查询改成vba呢?

[复制链接]
跳转到指定楼层
1#
发表于 2006-10-8 20:55:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
以前曾提过这个问题,wwwwa的答案是肯定的,但这个查询运行起来很慢,特别在数据多的时候,请问能否将这个查询改成vba呢?






wwwwa的答案是:

SELECT id, 名称, 数量, 应提数量, 生产日期, IIF(ISNULL(需求数量1),DD,需求数量1) AS 需求数量
FROM (SELECT id, 名称, 应提数量, 生产日期, 库存, 数量, lj, C.DD, lj-C.DD AS ce,
iif(生产日期=(select max(生产日期) from 表1 where c.名称=名称) and lj<提货数量,1,0) AS bj, iif(ce>0,1,0) AS bj1,
iif(bj=0 and bj1=0,应提数量,iif((bj=0 and bj1=1 and ce<0) or (bj=1 and bj1=0),-1*ce+数量,应提数量)) AS 需求数量1
FROM (
select a.*,b.提货数量 AS DD,iif(lj>=提货数量,数量-(lj-提货数量),数量) as 应提数量,
iif(lj-提货数量>=0 and 库存<=数量 and 应提数量<>0,1,0 ) as bz,
iif(a.lj>=提货数量,lj-[提货数量],0) AS 库存
from (
SELECT A.id, IIF(ISNULL(a.名称),b.名称,A.名称) AS 名称, A.数量, A.生产日期, B.提货数量,A.LJ
FROM (select *,(select sum(数量)  from 表1 where 生产日期<=a.生产日期 and 名称=a.名称) as lj
from (SELECT * FROM 表1 order by 生产日期) a) AS A RIGHT JOIN 表2 AS b ON a.名称=b.名称
ORDER BY A.名称, 生产日期) AS A
) AS c
WHERE 库存=0 OR Bz=1) ORDER BY 名称, 生产日期

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2006-10-8 21:44:00 | 只看该作者
查询可以实现,VBA当然没问题
3#
 楼主| 发表于 2006-10-8 22:41:00 | 只看该作者
上面那个sql语句太复杂啦,其实我都不太看得懂,更别说vba啦,看来还是需要版主你再次伸出援助之手了,谢啦!
4#
发表于 2006-10-8 22:51:00 | 只看该作者
把例子传上来
5#
 楼主| 发表于 2006-10-8 23:06:00 | 只看该作者

好的!




Thank you!在线等。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
6#
发表于 2006-10-9 00:34:00 | 只看该作者
select stock.名称,stock.生产日期,iif(stock.小计-Sale.提货数量>0,stock.数量-stock.小计+Sale.提货数量,stock.数量) as 应提数量
from
表2 as Sale left join
(select s1.名称,s1.生产日期,s1.数量,sum(s2.数量) as 小计
from 表1 as s1 inner join 表1 as s2
on s1.名称=s2.名称 and s1.生产日期>=s2.生产日期
group by s1.名称,s1.生产日期,s1.数量
order by s1.名称,s1.生产日期
) as stock
on sale.名称=stock.名称
Where stock.小计-Sale.提货数量<stock.数量
7#
发表于 2006-10-9 00:46:00 | 只看该作者

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
8#
 楼主| 发表于 2006-10-9 00:48:00 | 只看该作者
Thanks all!!!
9#
发表于 2006-10-12 01:37:00 | 只看该作者
我正适用,DJT的应就行了,谢谢大家啦

有问题再找大家[em04]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-14 13:47 , Processed in 0.092206 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表