数据导入

hu_service 2012-01-15 08:18:20
表一 商家表
sj表结构:
id,name(名称),num(编号),leibie(类别),rate(费率),fengding(封顶),ticheng(提成),rateDate(费率执行日期),tichengDate(提成执行日期)

表二 交易记录
jiaoyi表结构
id,jiaoyiDate(交易时间),sjnum(商家编号),sjlb(商家类别),money(交易金额),rate(费率),fengding(封顶),ticheng(提成),shouxufei(手续费)

业务逻辑:
从格式化的txt文本里读取交易记录信息,并插入到jiaoyi表里。

1、txt文本读取数据
2、读取数据后进行判断,
<1>、此交易记录的商家是否存在于sj表里 selct * from sj where num='sjnum'
<2>、更改费率、提成(如果交易时间 大于 费率执行日期则更改jiaoyi表里 rate为 sj表设定的rate,否则保持不变)
select * from sj where DATEDIFF (s,rateDate,jiaoyiDate)>0 and num='sjnum'
<3>、更改提成(如果交易时间 大于 提成执行日期则更改jiaoyi表里 ),为 sj表设定的),,否则保持不变)
select * from sj where DATEDIFF (s,tichengDate,jiaoyiDate)>0 and num='sjnum'
<4>、手续费的计算
根据费率、封顶、交易金额算出手续费

说明:交易时间在 费率执行日期、提成执行日期之后的按照商家表里设定的费率、提成 否则不予更改

从txt读取所有数据后,进行循环修改 。每循环一次 都要对 数据库进行三次的查询操作。而txt文本的数据每次都在三千行以上,也就是说,循环修改三千条的数据要进行九千次的读库,三千次的手续费计算,时间消耗太长,性能跟不上。

如何提升性能,或是有更好的数据库设计来满足条件。

...全文
59 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
hu_service 2012-01-16
  • 打赏
  • 举报
回复
没人了呢,都放年假了啊。

25,980

社区成员

发帖
与我相关
我的任务
社区描述
高性能WEB开发
社区管理员
  • 高性能WEB开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧