是这样的,首先a表有一列control_seq是主键,b表是附件表,b表里面的proj_id对应的是a表的control_seq,但是附件表会有多条记录,也就是说proj_id会重复。这种情况下,我想以左表为准,查询a表记录的同时对a表的附件数目进行统计。我自己做了一下,发现a left jon b,因为b会有多条附件的缘故,造成查询出来的数据会重复。多谢大大们指教。谢谢!
解决方案 »
- pl sql登录oracle报错 求高手解答
- plsql有没有compare函数
- 关于游标通过while遍历的问题
- 关于oracle的系统表问题?
- Olacle 中 not in/in ('','')语法中,怎么样可以用查出或传入的一个字符串来代替('','')?(100分求)
- Oracle Internet Directory ( oracle ldap ) 高手请进
- 求一sql语句
- 在oracle中如何用check和like来实现一个字段中只能输入数字
- SQL语句请高手帮忙,急!谢谢!!
- 这下玩大发了,“无法解析连接描述符中指定的sid”
- Oracle动态拼接SQL语句???
- 编译这个存储过程,pl/sql马上就无响应了
on a.control_seq=b.proj_id
group by a.control_seq;
select controlseq, (select count(projid) from a,b where a.controlseq=b.projid) from a.希望有更好的办法。
select a.control_seq ,col1,col2....., count() over(group by b.proj_id)
from a left join b
on a.control_seq=b.proj_id如果是想统计每一control_seq对应的条数,则如上。如果是想统计b表的行数,则去掉group by 即可。