一个简单的业务逻辑:表 A主键:付款批次外键:付款号 一对多:一个付款批次对应多个付款号
表B:主键:付款号
表C:主键:付款账单号 外键:付款号 一对多:一个付款号对应多个付款账单号
原来我的计算都是先算一个付款号下面所有的账单的和,外面嵌套一个查询求出一个付款批次下的和,但是我试了把他们直接通过付款号连接,如果不算和数据记录数量是有问题的,但是和却是对的?请问这是特列,还是一般规律,还是说两张表连接才有这种情况
表B:主键:付款号
表C:主键:付款账单号 外键:付款号 一对多:一个付款号对应多个付款账单号
原来我的计算都是先算一个付款号下面所有的账单的和,外面嵌套一个查询求出一个付款批次下的和,但是我试了把他们直接通过付款号连接,如果不算和数据记录数量是有问题的,但是和却是对的?请问这是特列,还是一般规律,还是说两张表连接才有这种情况
解决方案 »
- oracle 存储过程 判断字段中是否包含指定的字符
- 关于update SQL语句,简单问题,大家来看看
- ORACLE分布式事务中设置Commit point site的意义是什么?
- 关于分割字符串的问题
- PROC一个很奇怪的问题。
- 怎么比较sql的速度呢?
- oracle下怎样导入纯文本的数据?
- Oracle Developer Form Build 如何连接 Oracle 9i ! ! !
- 在PL/SQL的procedure中使用TRUNCATE语句问题!!!
- 安装oracle 11g R2 rac遇到节点错误,麻烦高手专家帮忙解答下,感谢
- PL/SQL CTRL 鼠标左键 超链接跳转这个功能如何设置
- 求教CLOB转化STRING类型的问题 - -
1 : N
1 : N
这关系很明白呀, 求和就是 左关联后直接把 表C账单相加就行了
select a.付款号,b.money from a
left join (select b.付款号,sum(money) monye from b ) b
on a.付款号=b.付款号