数据库设计的严重不合理,
都这样的设计,还想性能良好
update tbl_a set rjck =
(select sum(zmye)/30 from tbl_a
where zjrq>=2002-09-01
and zjrq<2002-09-30)
where zjrq=2002-09-30
都这样的设计,还想性能良好
update tbl_a set rjck =
(select sum(zmye)/30 from tbl_a
where zjrq>=2002-09-01
and zjrq<2002-09-30)
where zjrq=2002-09-30
解决方案 »
- 下面这里面红色的字体都是干什么用的啊????
- 求一条查询语句
- PLS-00201: 必须说明标识符
- 创建应用环境问题
- Oracle中如何處理帶中劃線的字段?
- 编译一过程时,出现PLS-00103错误,怎么解决?
- MERGE 与 ORA-08006
- ORACLE 自定义数据类型
- Linux下建立两个Oracle数据库,结果重新启动之后只有一个数据库服务启动了,另外一个无法启动,请各位高手帮忙!
- PLSQLDev启动用户登陆窗口中的database填什么?我忘记安装的oracle数据库名了,怎么样查?
- 一个SQL问题,今天就结 (解决的话)
- 请问oracle里有类似SQL Server一样的"自动生成SQL脚本"的冬冬吗?
都这样的设计,还想性能良好
update tbl_a set rjck =
(select sum(zmye)/30 from tbl_a
where zjrq>=2002-09-01
and zjrq<2002-09-30)
where zjrq=2002-09-30
update tbl_a a set rjck=(select avg(zmye) from tbl_a b where a.zh=b.zh and b.zjrq<to_date('30-9-2002','dd-mm-yyyy') group by zh)
update tbl_a a set rjck=(select avg(zmye) from tbl_a b where a.zh=b.zh and b.zjrq<to_date('30-9-2002','dd-mm-yyyy') group by zh) where zjrq=to_date('2002-9-30','yyyy-mm-dd')
update tbl_a a set rjck=(select avg(zmye) from tbl_a b where a.zh=b.zh and b.zjrq<to_date('30-9-2002','dd-mm-yyyy') group by zh) where zjrq=to_date('2002-9-30','yyyy-mm-dd')
另外用avg在我这儿是不可行的,只能用sum()/天数 而不是记录数计算。