SQL> SELECT COUNT (r.rdj_grbh) rs, COUNT (DISTINCT f.bih_id) fs,
2 SUM (f.fcz_czmj) OVER (PARTITION BY f.bih_id) mj,
3 SUM (f.fcz_czjs) OVER (PARTITION BY f.bih_id) js
4 FROM sjcj_rydjbxx r, sjcj_fwdjbxx f
5 group by r.rzf_xzdxzqh;
SUM (f.fcz_czmj) OVER (PARTITION BY f.bih_id) mj,
*
第 2 行出现错误:
ORA-00979: 不是 GROUP BY 表达式
sjcj_rydjbxx r 中r.rdj_grbh 与sjcj_fwdjbxx f.bih_id 是一对多的关系求教!
解决方案 »
- Oracle下如何做到多用户下都有相同资源————急——————
- 急急急:行锁定问题
- 问个Oracle基础问题,PLSQL生成的建表SQL后面那段代码的意义?
- oracle 10g数据导入导出imp/exp的问题
- Oracle怎样配置一个客户机/服务器环境,客户机需要安装什么软件,服务器需要安装什么软件,需要开什么服务?
- oracle 10g的客户端如何连接到oracle 8的服务器
- 登陆Management Server mserver问题:急!!!(给分)
- 请问简单的存储过程内层查询内层捕捉的方法?
- sql工具咨询。
- 本机数据库连接的问题?
- oracle如何创建job
- 本人想在广州找份oracle数据库开发相关的工作.求推荐?
SELECT COUNT (r.rdj_grbh) rs, COUNT (DISTINCT f.bih_id) fs,
SUM (f.fcz_czmj) OVER (PARTITION BY f.bih_id) mj,
SUM (f.fcz_czjs) OVER (PARTITION BY f.bih_id) js
FROM sjcj_rydjbxx r, sjcj_fwdjbxx f
所以分析函数不可能出现在用于得到select结果的group by 后面.
比如select empno,sum(sal)over(partition by deptno) from emp;
这个语句实际上相当于先执行select * from emp;
然后再对查询结果使用分析函数按deptno分组计算sal和,然后得到结果.
--有分析函数就可以了 去看看相关的文档
SQL> SELECT COUNT (r.rdj_grbh) rs, COUNT (DISTINCT f.bih_id) fs,
2 SUM (f.fcz_czmj) OVER (PARTITION BY f.bih_id) mj,
3 SUM (f.fcz_czjs) OVER (PARTITION BY f.bih_id) js
4 FROM sjcj_rydjbxx r, sjcj_fwdjbxx f
--有分析函数就可以了 去看看相关的文档
SQL> SELECT COUNT (r.rdj_grbh) rs, COUNT (DISTINCT f.bih_id) fs,
2 SUM (f.fcz_czmj) OVER (PARTITION BY f.bih_id) mj,
3 SUM (f.fcz_czjs) OVER (PARTITION BY f.bih_id) js
4 FROM sjcj_rydjbxx r, sjcj_fwdjbxx f