搭建论坛《搭建之星》论坛数据库交流 → 再次请教SQL语句,希望能得到回答,多谢了


  共有2529人关注过本帖树形打印

主题:再次请教SQL语句,希望能得到回答,多谢了

帅哥哟,离线,有人找我吗?
wenti
  1楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:爱好者 帖子:75 积分:582 威望:0 精华:0 注册:2009-6-22 15:44:49
再次请教SQL语句,希望能得到回答,多谢了  发帖心情 Post By:2009-10-16 11:18:41

请教一个查询语句

有任意两个表,其中有一个相同字段,举例如下

表1: 名称,入库数量

表2: 名称,销售数量

表3 名称 ,退货数量

表4 名称,报废数量

现在想按名称做一个统计查询表3,查询后的结果格式为, 名称 库存数量

比如:表1 名称 ,入库数量

苹果 20

苹果 30

黄瓜 40

表2 ,名称 销售数量

苹果 10

苹果 5

表3 ……

表4……

查询后统计结果为 表3 名称 库存数量

苹果

黄瓜

库存数量=入库数量-销售数量-报废数量-退货数量

求这一句SQL 查询语句 ,谢谢!


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
引力波
  2楼 个性首页 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:首席分析师 帖子:1554 积分:4008 威望:5 精华:10 注册:2002-12-5 10:22:01
  发帖心情 Post By:2009-10-16 11:55:32

先对四个表分别进行分组统计,并将统计结果存如临时表中,最后将四个临时表的结果再做统计.

分组统计、保存用下面的语句:如对“表1”统计

insert into 临时表1 select 名称, sum(入库数量) from 表1 group by 名称

最后合并统计用下面的语句:

select 名称, 库存数量(A.入库数量-B.销售数量-C.报废数量-D.退货数量) from 临时表1 A,临时表2 B,临时表3 C,临时表4 D


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
wenti
  3楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:爱好者 帖子:75 积分:582 威望:0 精华:0 注册:2009-6-22 15:44:49
  发帖心情 Post By:2009-10-16 12:36:14

万分感谢引力波的帮助,谢谢了,我试下

,如果要再一次查询,那么临时表里的数据还要删除吗,是不是自动清空的呢
insert into 临时表1 select 名称, sum(入库数量) from 表1 group by 名称

如果再次查询需要删除临时表的数据,那么如果数据很多的时候,删除数据就需要很长时间了

如果解决查询时的速度问题呢




支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
引力波
  4楼 个性首页 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:首席分析师 帖子:1554 积分:4008 威望:5 精华:10 注册:2002-12-5 10:22:01
  发帖心情 Post By:2009-10-16 13:58:49

补充一下,后面增加一个条件控制:

select 名称, 库存数量(A.入库数量-B.销售数量-C.报废数量-D.退货数量) from 临时表1 A,临时表2 B,临时表3 C,临时表4 D where A.名称=B.名称=C.名称=D.名称

当然,每次都需要删除临时表中的记录,采用SQL命令这个过程对速度影响不大。


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
wenti
  5楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:爱好者 帖子:75 积分:582 威望:0 精华:0 注册:2009-6-22 15:44:49
  发帖心情 Post By:2009-10-16 15:53:46

能否先在access里,先做个查询呢,然后ADO查询构建,直接调取access里的查询表,不知道ADO查询构建是否能连接到access查询的表,这个查询速度都不到1秒,数据再多都不受影响

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
引力波
  6楼 个性首页 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:首席分析师 帖子:1554 积分:4008 威望:5 精华:10 注册:2002-12-5 10:22:01
  发帖心情 Post By:2009-10-16 16:34:25

ADO查询构件必须与数据库连接,前面的SQL命令本身就是执行查询、统计事件,不需要你说的这些过程。

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部

返回版面帖子列表

再次请教SQL语句,希望能得到回答,多谢了








签名