比如数据库中有个计划表 分别有id,金额,已还金额几个字段,
有个还款表 字段为 id ,还款金额, 计划表id
还款:第一次232 ,第二次3000,第三次1768,第四次1560,第五次有个-3000的退款
计划4个:金额分别为2500
怎么做到让数据如下显示
第一笔计划金额:2500 还款:232 2268 -2500 732 1768
第二笔计划金额:2500 1560 -500
因为业务需要所以这个正和负必须要显示,但是如果拿计划表查询结果做为循环体,那还款表插入计划表的id就插不正确了。之前就是用正负之和的数字来跟每笔计划金额对比,这样显示就不对了。
不清楚为什么分为正和负,但是这样可能会改变位置。循环还款金额相加,当相加-计划金额大于等于0跳出循环,计划表下移
你是要写SQL一句话出来嘛?
如果是,你需要一个把字符串拼到一起的聚合函数,Mysql我不熟,Oracle可以自己写一个(网上到处都有)。
如果不是,就自己写循环遍历主表,拿到一个id再查子表。
这么简答的逻辑 干嘛弄那么费劲
一个计划表:id 、金额、已还金额
还款表 字段为 id ,还款金额, 计划表id、再加入一个是否成功
成功直接加钱,失败减去。展示的时候也根据状态判断,什么正负啊 那样效率低下