2012-01-07 14 views
0

我想用php上传一个csv到数据库,但是在我之前我想修改一些内容。用php导入/上传前用php修改csv

数据库表中的CSV将来自有3列:ID,邮政编码,debt_amount 数据库表中的CSV会去有4列:ID,邮政编码,debt_amount,算上


我想先做的是修改完整的邮编,以显示“空间”之前的第一部分。 然后我想将所有具有相同修改邮编行,这将做两件事情:

  1. 计数用相同的修改邮政编码的行数,并将总数为在合并行列“计数”。

  2. 为相同的修改后的邮政编码添加'debt_amount'列,并将总额纳入'debt_amount'列下的合并行。

这些过程需要一起运行。 完成后,我想将其上传到数据库。


我不知道这是否是做的最好的办法,还是我应该从第一数据库首先处理的数据并将其导出到CSV,只让我上传另一个数据库上的CSV。 任何一个过程的帮助都很好。

感谢

回答

0

我认为这是最好的MySQL本身来处理这些数据,你可以决定,如果你想在源数据库或者目标数据库所以处理它

,如果处理包括:

  • 修改邮政编码
  • 计数#rows与同改性邮政编码
  • 总和debt_amount为相同修改的邮政编码

要么在源数据库中的处理中,存储在临时表中的结果,生成CSV,然后导入到目标数据库。或者从源数据库生成CSV,导入到临时表中的目标数据库,执行处理并将结果存储到最终表中。

+0

感谢Abhay,我喜欢这种方式,我认为处理新的数据库位置会更容易。你能否提供一些可以帮助完成这些过程的代码,用相同的邮政编码计算行数并将其传递给新的表格并为这个邮政编码添加debt_amount? – zizther 2012-01-08 17:41:56

+0

@zizther,当然。我们可以尝试使用您已有的查询来解决问题。你有没有试过的查询? – Abhay 2012-01-09 10:07:21

+0

对不起,延迟回复。我还没有任何疑问,因为这只是我想如何处理数据。如果它再次出现,我会回复。 谢谢 – zizther 2012-01-18 16:52:54

0
  1. 做标准文件上传。
  2. 从临时上传文件中读取CSV内容。
  3. 过程中的CSV数据(例如与SplFileObject­Docs
  4. 将被处理的数据到数据库。