mysql存储过程 取日期_mysql 存储过程 日期

先两个表join  在order by time

select * from (select * from A union select * from B) as C order by time asc;

A表和B表字段数目要相同,SQL未测试

######回复

@神州浪子 : 是的,开始没看到余额,这余额好像没办法直接搞出来,要是把余额单独建一次表,每次操作后把余额计算对应存进去,不知道行不行得通######谢谢,思路很好,只是后面的余额计算很麻烦######

第一,你错在把存取款放在俩表里。

第二,你这两个表里总得有个 account id 吧,这样才能 join 啊

哎,

######刚看了下 原来的表是有关联id的。。 现在更改了 麻烦帮忙看看能解决么######我也不知道是哪个混蛋设计的表。。。 假设有ID,这个SQL应该怎么写呢?######

select u,'存款',金额,时间 , ((select sum(存款金额) from a as a1 where a1.时间 <= a.时间) -(select sum(取款金额) from b as b1 where b1.时间 <= a.时间)) as 余额 from a

uniun

select u,'取款',金额,时间 , ((select sum(存款金额) from a as a1 where a1.时间 <= b.时间) -(select sum(取款金额) from b as b1 where b1.时间 <= b.时间)) as 余额 from b

仅供参考..

######用日期和存款、取款分组,sum(存款)—sum(取款),两表用用户关联######写一个存储过程将b表插入a表如何?取款字段为负######

会用窗口函数一点都不麻烦,不过MYSQL好像没有这个武器

######一个查询,结果OK SELECT c.* ,(SELECT sum(d.e) FROM (SELECT a.date,a.money as e FROM a UNION SELECT b.date,-b.money as e FROM b) as d WHERE d.date <= c.date) as '余额' FROM (SELECT * FROM a UNION SELECT * FROM b) as c ORDER BY c.date;######应该就一个表,存取用不同的标识才好嘛

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值