社区
MS-SQL Server
帖子详情
如何写这个存储过程,
kevin_w
2001-12-11 08:41:34
一个公司下属有N个子公司,须统计一些数据,,,
表A如下: 子公司代码 子公司名称 出口量 进口量 ···
com_code com_name ex_num im_num
另一表B 产品编号 进出口标志 ···· (产品编号的前两位为子公司代码)
en_id ie_mark
能否写一存储过程,在表B中按 子公司(即产品编号前两位)及进出口标志 统计出所有产品的总的 进口量出口量,再到表A 中更新其中数据
...全文
102
11
打赏
收藏
如何写这个存储过程,
一个公司下属有N个子公司,须统计一些数据,,, 表A如下: 子公司代码 子公司名称 出口量 进口量 ··· com_code com_name ex_num im_num 另一表B 产品编号 进出口标志 ···· (产品编号的前两位为子公司代码) en_id ie_mark 能否写一存储过程,在表B中按 子公司(即产品编号前两位)及进出口标志 统计出所有产品的总的 进口量出口量,再到表A 中更新其中数据
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
kevin_w
2001-12-12
打赏
举报
回复
.....
kevin_w
2001-12-12
打赏
举报
回复
a 表结构如下
子公司代码 子公司名 出口量 进口量 ...
com_code com_name ex_num im_num ...
01 驻北京公司 NULL NULL ...
02 驻上海公司 NULL NULL ...
. . .
B 表结构如下
产品编号 进出口标志 ...
en_id ie_mark ...
0100023 I
0200212 I
0122222 I
0111111 E
0221111 I
...
EN_ID 的前两位即为 COM_CODE 出口量即为 所有IE_MARK=E的数据
现要写一存储过程分别统计 子公司代码为 01 02 03 ... 的进出口量,然后写入A表
kevin_w
2001-12-12
打赏
举报
回复
不好意思,未说清楚,进出口数量并不是表示某项产品的进出口总数,而是指所有该子公司内产品的进出口 次数 ,,相当于求B表中符合条件的 COUNT(*) ,
kevin_w
2001-12-12
打赏
举报
回复
不好意思,未说清楚,进出口数量并不是表示某项产品的进出口总数,而是指所有该子公司内产品的进出口次数,,相当于求B表中符合条件的 COUNT(*)
kevin_w
2001-12-12
打赏
举报
回复
不好意思,未说清楚,进出口数量并不是表示某项产品的进出口总数,而是指所有该子公司内产品的进出口次数,,相当于求B表中符合条件的 COUNT(*)
昵称被占用了
2001-12-12
打赏
举报
回复
写了两次表结构都没有写B表的进出口数量字段(第一次回答时用Num),难道没有这个字段?!
试过上面语句没有?加个过程头不就是可以一次更新A表的所有子公司,再从A表查询不就行了?
kevin_w
2001-12-12
打赏
举报
回复
循环处理是可以实现,不过数据量比较大,实现的速度很慢,能否有更有效的办法呢?
panther_totem
2001-12-12
打赏
举报
回复
你就用游标,对B表的数据一条一条的处理,根据en_id的前两个字符和ie_mark来对A表的数据进行UPDATE,修改其相应的ex_num 和 im_num,循环处理完了,ex_num 和 im_num不就累加得到了你需要的结果了。
昵称被占用了
2001-12-11
打赏
举报
回复
如果A表有所有子公司 AND B表有所有子公司 就可以!
kevin_w
2001-12-11
打赏
举报
回复
TO:Haiwer(海阔天空)
这样可以 统计 出所有 子公司的数据??好象不行···
昵称被占用了
2001-12-11
打赏
举报
回复
update a
set ex_num=(select sum(Num) from b
where en_id like rtrim(a.com_code)+'%' and ie_mark='e'),
im_num=(select sum(Num) from b
where en_id like rtrim(a.com_code)+'%' and ie_mark='I')
呵呵,示意性的!
相关推荐
C#如何
写
删除图书
存储过程
很好的.如何
写
删除图书的
存储过程
.在企业管理器中
写
Create procedure delete_book
如何
写
存储过程
如何
写
存储过程
转载于:https://blog.51cto.com/5388057/911502
SQL Server中如何
写
存储过程
SQL Server中如何
写
存储过程
一直都很想了解如何
写
存储过程
,对于不熟悉的东西,总是觉得很神秘,呵呵。特别是看着同学
写
的那些
存储过程
,由于不了解
存储过程
的基本语法,看起来甚是吃力,很难理解。一直拖到今天,终于打开了SQL Server的联机丛书,了解了一些它的基本用法。以下是一些摘录,希望自己以后再次看的时候,可以加深理解,更加好的掌握。 1、设计
存储过程
几乎任何可
写
成批处
**Oracle中如何
写
存储过程
**
存储过程
发帖
MS-SQL Server
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
3.4w+
社区成员
25.4w+
社区内容
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
帖子事件
创建了帖子
2001-12-11 08:41
社区公告
暂无公告