请duanzilin(寻)帮忙解答一下这个问题

MAXIMO51 2005-12-08 10:45:26
to:duanzilin(寻)
感谢你在http://community.csdn.net/Expert/topic/4445/4445168.xml?temp=.2422907帖子中的解答。
现在这个问题和上一个问题其实是同样的问题
b表
ID MONTH RECQTY LINECOST
0002 2005-9 1 12
0003 2005-9 1 203.00
0001 2005-10 1 1500.00
0002 2005-10 2 12.00
0003 2005-10 3 202.00
0001 2005-11 2 1500.00
0002 2005-11 1 11.00
c表
ID MONTH USEQTY LINECOST
0001 2005-9 3 1581.2
0003 2005-9 5 203.00
0001 2005-10 3 1500.00
0003 2005-10 3 202.00
0001 2005-11 2 1500.00
0002 2005-11 1 11.00
0003 2005-11 4 201.00

结合上个问题中的a表
ID MONTH QTY COST
0001 2005-9 8 100.00
0002 2005-9 0 10.00
0003 2005-9 3 203.00
0001 2005-10 5 110.00
0002 2005-10 4 12.00
0003 2005-10 5 202.00
0001 2005-11 2 111.00
0002 2005-11 2 11.00
0003 2005-11 2 201.00
得到以下的结果:
ID NMONTH NQTY NCOST LMONTH LQTY LCOST USEQTY LINECOST1 RECQTY LINECOST2
0001 2005-9 8 100.00 3 1581.2 0 0
0002 2005-9 0 10.00 0 0 1 12
0003 2005-9 3 203.00 5 203.00 1 203
0001 2005-10 5 110.00 2005-9 8 100.00 3 1500 1 1500
0002 2005-10 4 12.00 2005-9 0 10.00 0 0 2 12
0003 2005-10 5 202.00 2005-9 3 203.00 3 202 3 202
0001 2005-11 2 111.00 2005-10 2 110.00 2 1500 2 1500
0002 2005-11 2 11.00 2005-10 2 12.00 1 11 1 11
0003 2005-11 2 201.00 2005-10 2 202.00 4 201 0 0
其中:
NMONTH NQTY NCOST
本月月份 本月数量 本月金额
LMONTH LQTY LCOST
上月月份 上月数量 上月金额
RECQTY LINECOST2
b表的USEQTY LINECOST
USEQTY LINECOST1
c表的RECQTY LINECOST

谢谢了先
...全文
116 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
沝林 2005-12-08
  • 打赏
  • 举报
回复
select a.id,a.month nmonth,a.qty nqty,a.cost ncost,
lag(a.month) over(partition by a.id order by a.month) lmonth,
lag(a.qty) over(partition by a.id order by a.month) lqty,
lag(a.cost) over(partition by a.id order by a.month) lcost,
b.RECQTY,LINECOST LINECOST2,c.USEQTY,LINECOST LINECOST1
from a,b,c
where a.id = b.id(+) and a.month = b.month(+)
and a.id = c.id(+) and a.month = c.month(+)
ORDER BY a.MONTH
软侠 2005-12-08
  • 打赏
  • 举报
回复
UP,很想知道OVER函數是做什麼用的?
沝林 2005-12-08
  • 打赏
  • 举报
回复
视图跟子查询的效果是一样的,只要源表改变了,视图里的数据也就跟着改变了
MAXIMO51 2005-12-08
  • 打赏
  • 举报
回复
谢谢duanzilin(寻) 的解答,问题解决了
但是有点小疑问请解释一下
我的a表的数据是在每个月最后一天的23:00启动一个job将其他表的数据插入进来的
现在我用duanzilin(寻)的方法把a,b,c表的一些创建成一个试图
这样,在每个月最后一天,表中有数据插入时,会不会给服务器造成很大的负担?
简单的说就是视图里的数据是什么时候被更新的,是在对视图做查询的时候还是被创建视图的表中数据插入或更新的时候?
谢谢。
内容概要:本文研究了基于QLearning自适应强化学习的PID控制器在自主水下航行器(AUV)中的应用,通过Matlab代码实现了对水下机器人的动力学建模与运动控制。重点探讨了将强化学习算法QLearning与传统PID控制相结合的方法,以提升AUV在复杂、时变及非线性水下环境中的自适应控制能力。文中系统分析了AUV的运动学与动力学特性,阐述了传统PID参数整定面临的挑战,并提出采用QLearning算法在线动态优化PID控制器的比例、积分和微分参数,从而实现对系统误差、响应速度、超调量等性能指标的综合优化。通过Matlab仿真实验验证了该复合控制策略在轨迹跟踪精度、抗外部干扰能力和系统鲁棒性方面的显著优势,充分展示了强化学习在智能水下装备自主控制领域的可行性和应用潜力。; 适合人群:具备自动控制理论基础、强化学习基础知识及Matlab编程能力的研究生、科研人员和自动化、海洋工程、机器人等相关领域的技术研发人员。; 使用场景及目标:①用于水下机器人、无人潜航器等智能移动装备的高精度运动控制系统设计与开发;②开展强化学习与经典控制理论融合创新的教学案例与科学研究;③解决传统固定参数PID控制器在面对模型不确定性和环境扰动时适应性差、控制性能下降的关键问题。; 阅读建议:建议读者结合提供的Matlab代码进行仿真实践,重点关注QLearning算法中状态空间、动作空间的设计逻辑以及奖励函数的构建原则,深入理解其在参数优过程中的作用机制,并可通过调整环境参数和初始条件来测试算法的鲁棒性与泛化能力。

684

社区成员

发帖
与我相关
我的任务
社区描述
智能路由器通常具有独立的操作系统,包括OpenWRT、eCos、VxWorks等,可以由用户自行安装各种应用,实现网络和设备的智能化管理。
linuxpython 技术论坛(原bbs)
社区管理员
  • 智能路由器社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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