如何实现这样的存储过程?

whizstorm 2004-11-08 10:11:16
TableA TableB
Id Date Position Id Begin End Segment
1 11-04 Up 1 0.5 1.36 K111+0.5
2 11-03 Down 1 5.6 7.2 K111+5.6
1 8.9 11.6 K111+8.9
1 20.8 28.3 K111+20.8
2 2.6 12.6 K113+2.6

TableC
Id Date Position Begin1 End1 Segment1 Begin2 End2 Segment2
1 11-04 Up 0.5 1.36 K111+0.5 5.6 7.2 K111+5.6
1 11-04 Up 8.9 11.6 K111+8.9 20.8 28.3 K111+20.8
2 11-03 Down 2.6 12.6 K113+2.6 空 空 空

对TableA中的每一条记录,以Id作为关系,从TableB中选择相应的项,作为TableC的项,填到TableC中,若TableB中对应TableA的一条记录超过两条则在TableC中另起一条记录,若不足两条记录则空。见上图。
...全文
158 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
江南水杉 2004-12-15
  • 打赏
  • 举报
回复
Access中可能实现不了,因为它不支持逻辑语句,不过用程序写逻辑语句可以做到,同时打开两个表
Begin2 End2 Segment2,是偶数记录
liuyann 2004-12-12
  • 打赏
  • 举报
回复
1. ACCESS中不支持所谓的存储过程
2. 一般来说类似的功能在程序中设置, 不过你想在何时生成表C内容? 是每一条新记录插入表B同时,还是每天定时?
3. 如果表C只不过是为了显示,则没必要必要设置这和一张表,而是在显示或报表程序时生成输出.
danielrh 2004-11-08
  • 打赏
  • 举报
回复
这个问题恐怕要用游标才能实现了。

7,712

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧